UNPKG

cloudflare

Version:

The official TypeScript library for the Cloudflare API

219 lines 6.7 kB
import * as Core from 'cloudflare/core'; import { APIResource } from 'cloudflare/resource'; import * as RoutesAPI from 'cloudflare/resources/radar/bgp/routes'; export declare class Routes extends APIResource { /** * List all Multi-origin AS (MOAS) prefixes on the global routing tables. */ moas(query?: RouteMoasParams, options?: Core.RequestOptions): Core.APIPromise<RouteMoasResponse>; moas(options?: Core.RequestOptions): Core.APIPromise<RouteMoasResponse>; /** * Lookup prefix-to-ASN mapping on global routing tables. */ pfx2as(query?: RoutePfx2asParams, options?: Core.RequestOptions): Core.APIPromise<RoutePfx2asResponse>; pfx2as(options?: Core.RequestOptions): Core.APIPromise<RoutePfx2asResponse>; /** * Get the BGP routing table stats (Beta). */ stats(query?: RouteStatsParams, options?: Core.RequestOptions): Core.APIPromise<RouteStatsResponse>; stats(options?: Core.RequestOptions): Core.APIPromise<RouteStatsResponse>; /** * Gets time-series data for the announced IP space count, represented as the * number of IPv4 /24s and IPv6 /48s, for a given ASN. */ timeseries(query?: RouteTimeseriesParams, options?: Core.RequestOptions): Core.APIPromise<RouteTimeseriesResponse>; timeseries(options?: Core.RequestOptions): Core.APIPromise<RouteTimeseriesResponse>; } export interface RouteMoasResponse { meta: RouteMoasResponse.Meta; moas: Array<RouteMoasResponse.Moa>; } export declare namespace RouteMoasResponse { interface Meta { data_time: string; query_time: string; total_peers: number; } interface Moa { origins: Array<Moa.Origin>; prefix: string; } namespace Moa { interface Origin { origin: number; peer_count: number; rpki_validation: string; } } } export interface RoutePfx2asResponse { meta: RoutePfx2asResponse.Meta; prefix_origins: Array<RoutePfx2asResponse.PrefixOrigin>; } export declare namespace RoutePfx2asResponse { interface Meta { data_time: string; query_time: string; total_peers: number; } interface PrefixOrigin { origin: number; peer_count: number; prefix: string; rpki_validation: string; } } export interface RouteStatsResponse { meta: RouteStatsResponse.Meta; stats: RouteStatsResponse.Stats; } export declare namespace RouteStatsResponse { interface Meta { data_time: string; query_time: string; total_peers: number; } interface Stats { distinct_origins: number; distinct_origins_ipv4: number; distinct_origins_ipv6: number; distinct_prefixes: number; distinct_prefixes_ipv4: number; distinct_prefixes_ipv6: number; routes_invalid: number; routes_invalid_ipv4: number; routes_invalid_ipv6: number; routes_total: number; routes_total_ipv4: number; routes_total_ipv6: number; routes_unknown: number; routes_unknown_ipv4: number; routes_unknown_ipv6: number; routes_valid: number; routes_valid_ipv4: number; routes_valid_ipv6: number; } } export interface RouteTimeseriesResponse { meta: RouteTimeseriesResponse.Meta; serie_ipv4_24s: RouteTimeseriesResponse.SerieIPV4_24s; serie_ipv6_48s: RouteTimeseriesResponse.SerieIPV6_48s; } export declare namespace RouteTimeseriesResponse { interface Meta { dateRange: Array<Meta.DateRange>; } namespace Meta { interface DateRange { /** * Adjusted end of date range. */ endTime: string; /** * Adjusted start of date range. */ startTime: string; } } interface SerieIPV4_24s { timestamps: Array<string>; values: Array<number>; } interface SerieIPV6_48s { timestamps: Array<string>; values: Array<number>; } } export interface RouteMoasParams { /** * Format results are returned in. */ format?: 'JSON' | 'CSV'; /** * Lookup only RPKI invalid MOASes */ invalid_only?: boolean; /** * Lookup MOASes originated by the given ASN */ origin?: number; /** * Lookup MOASes by prefix */ prefix?: string; } export interface RoutePfx2asParams { /** * Format results are returned in. */ format?: 'JSON' | 'CSV'; /** * Return only results with the longest prefix match for the given prefix. For * example, specify a /32 prefix to lookup the origin ASN for an IPv4 address. */ longestPrefixMatch?: boolean; /** * Lookup prefixes originated by the given ASN */ origin?: number; /** * Lookup origin ASNs of the given prefix */ prefix?: string; /** * Return only results with matching rpki status: valid, invalid or unknown */ rpkiStatus?: 'VALID' | 'INVALID' | 'UNKNOWN'; } export interface RouteStatsParams { /** * Single ASN as integer. */ asn?: number; /** * Format results are returned in. */ format?: 'JSON' | 'CSV'; /** * Location Alpha2 code. */ location?: string; } export interface RouteTimeseriesParams { /** * Single ASN as integer. */ asn?: number; /** * End of the date range (inclusive). */ dateEnd?: string; /** * Shorthand date ranges for the last X days - use when you don't need specific * start and end dates. */ dateRange?: '1d' | '2d' | '7d' | '14d' | '28d' | '12w' | '24w' | '52w' | '1dControl' | '2dControl' | '7dControl' | '14dControl' | '28dControl' | '12wControl' | '24wControl'; /** * Start of the date range (inclusive). */ dateStart?: string; /** * Format results are returned in. */ format?: 'JSON' | 'CSV'; /** * Location Alpha2 code. */ location?: string; } export declare namespace Routes { export import RouteMoasResponse = RoutesAPI.RouteMoasResponse; export import RoutePfx2asResponse = RoutesAPI.RoutePfx2asResponse; export import RouteStatsResponse = RoutesAPI.RouteStatsResponse; export import RouteTimeseriesResponse = RoutesAPI.RouteTimeseriesResponse; export import RouteMoasParams = RoutesAPI.RouteMoasParams; export import RoutePfx2asParams = RoutesAPI.RoutePfx2asParams; export import RouteStatsParams = RoutesAPI.RouteStatsParams; export import RouteTimeseriesParams = RoutesAPI.RouteTimeseriesParams; } //# sourceMappingURL=routes.d.ts.map