UNPKG

cloudflare

Version:

The official TypeScript library for the Cloudflare API

109 lines (91 loc) 2.44 kB
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../../resource'; import * as Core from '../../core'; import { V4PagePagination, type V4PagePaginationParams } from '../../pagination'; export class DNS extends APIResource { /** * Gets a list of all the domains that have resolved to a specific IP address. * * @example * ```ts * // Automatically fetches more pages as needed. * for await (const dns of client.intel.dns.list({ * account_id: '023e105f4ecef8ad9ca31a8372d0c353', * })) { * // ... * } * ``` */ list(params: DNSListParams, options?: Core.RequestOptions): Core.PagePromise<DNSV4PagePagination, DNS> { const { account_id, ...query } = params; return this._client.getAPIList(`/accounts/${account_id}/intel/dns`, DNSV4PagePagination, { query, ...options, }); } } export class DNSV4PagePagination extends V4PagePagination<DNS> {} export interface DNS { /** * Total results returned based on your search parameters. */ count?: number; /** * Current page within paginated list of results. */ page?: number; /** * Number of results per page of results. */ per_page?: number; /** * Reverse DNS look-ups observed during the time period. */ reverse_records?: Array<DNS.ReverseRecord>; } export namespace DNS { export interface ReverseRecord { /** * First seen date of the DNS record during the time period. */ first_seen?: string; /** * Hostname that the IP was observed resolving to. */ hostname?: string; /** * Last seen date of the DNS record during the time period. */ last_seen?: string; } } export interface DNSListParams extends V4PagePaginationParams { /** * Path param: Identifier. */ account_id: string; /** * Query param: */ ipv4?: string; /** * Query param: */ start_end_params?: DNSListParams.StartEndParams; } export namespace DNSListParams { export interface StartEndParams { /** * Defaults to the current date. */ end?: string; /** * Defaults to 30 days before the end parameter value. */ start?: string; } } DNS.DNSV4PagePagination = DNSV4PagePagination; export declare namespace DNS { export { type DNS as DNS, DNSV4PagePagination as DNSV4PagePagination, type DNSListParams as DNSListParams }; }