# Radar # AI # To Markdown ## Convert Files into Markdown `client.radar.ai.toMarkdown.create(ToMarkdownCreateParamsparams, RequestOptionsoptions?): SinglePage` **post** `/accounts/{account_id}/ai/tomarkdown` Converts uploaded files into Markdown format using Workers AI. ### Parameters - `params: ToMarkdownCreateParams` - `account_id: string` Path param - `files: Array` Body param ### Returns - `ToMarkdownCreateResponse` - `data: string` - `format: string` - `mimeType: string` - `name: string` - `tokens: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); // Automatically fetches more pages as needed. for await (const toMarkdownCreateResponse of client.radar.ai.toMarkdown.create({ account_id: '023e105f4ecef8ad9ca31a8372d0c353', files: [fs.createReadStream('path/to/file')], })) { console.log(toMarkdownCreateResponse.data); } ``` #### Response ```json { "result": [ { "data": "data", "format": "format", "mimeType": "mimeType", "name": "name", "tokens": "tokens" } ], "success": true } ``` ## Domain Types ### To Markdown Create Response - `ToMarkdownCreateResponse` - `data: string` - `format: string` - `mimeType: string` - `name: string` - `tokens: string` # Inference ## Get Workers AI inference distribution by dimension `client.radar.ai.inference.summaryV2("MODEL" | "TASK"dimension, InferenceSummaryV2Paramsquery?, RequestOptionsoptions?): InferenceSummaryV2Response` **get** `/radar/ai/inference/summary/{dimension}` Retrieves an aggregated summary of unique accounts using Workers AI inference grouped by the specified dimension. ### Parameters - `dimension: "MODEL" | "TASK"` Specifies the attribute by which to group the results. - `"MODEL"` - `"TASK"` - `query: InferenceSummaryV2Params` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `InferenceSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.inference.summaryV2('MODEL'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "@cf/meta/llama-3-8b-instruct": "8.381743", "@cf/meta/m2m100-1.2b": "22.904", "@cf/stabilityai/stable-diffusion-xl-base-1.0": "10.274394" } }, "success": true } ``` ## Get time series distribution of Workers AI inference by dimension. `client.radar.ai.inference.timeseriesGroupsV2("MODEL" | "TASK"dimension, InferenceTimeseriesGroupsV2Paramsquery?, RequestOptionsoptions?): InferenceTimeseriesGroupsV2Response` **get** `/radar/ai/inference/timeseries_groups/{dimension}` Retrieves the distribution of unique accounts using Workers AI inference, grouped by the specified dimension over time. ### Parameters - `dimension: "MODEL" | "TASK"` Specifies the attribute by which to group the results. - `"MODEL"` - `"TASK"` - `query: InferenceTimeseriesGroupsV2Params` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` ### Returns - `InferenceTimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.inference.timeseriesGroupsV2('MODEL'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Inference Summary V2 Response - `InferenceSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Inference Timeseries Groups V2 Response - `InferenceTimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Summary ## Get Workers AI models summary `client.radar.ai.inference.summary.model(SummaryModelParamsquery?, RequestOptionsoptions?): SummaryModelResponse` **get** `/radar/ai/inference/summary/model` Retrieves the distribution of unique accounts by model. ### Parameters - `query: SummaryModelParams` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryModelResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.inference.summary.model(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "@cf/meta/llama-3-8b-instruct": "8.381743", "@cf/meta/m2m100-1.2b": "22.904", "@cf/stabilityai/stable-diffusion-xl-base-1.0": "10.274394" } }, "success": true } ``` ## Get Workers AI tasks summary `client.radar.ai.inference.summary.task(SummaryTaskParamsquery?, RequestOptionsoptions?): SummaryTaskResponse` **get** `/radar/ai/inference/summary/task` Retrieves the distribution of unique accounts by task. ### Parameters - `query: SummaryTaskParams` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryTaskResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.inference.summary.task(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "text generation": "10.274394", "text-to-image": "22.904" } }, "success": true } ``` ## Domain Types ### Summary Model Response - `SummaryModelResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Summary Task Response - `SummaryTaskResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` # Timeseries Groups # Summary ## Get Workers AI models time series `client.radar.ai.inference.timeseriesGroups.summary.model(SummaryModelParamsquery?, RequestOptionsoptions?): SummaryModelResponse` **get** `/radar/ai/inference/timeseries_groups/model` Retrieves the distribution of unique accounts by model over time. ### Parameters - `query: SummaryModelParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryModelResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.inference.timeseriesGroups.summary.model(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get Workers AI tasks time series `client.radar.ai.inference.timeseriesGroups.summary.task(SummaryTaskParamsquery?, RequestOptionsoptions?): SummaryTaskResponse` **get** `/radar/ai/inference/timeseries_groups/task` Retrieves the distribution of unique accounts by task over time. ### Parameters - `query: SummaryTaskParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryTaskResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.inference.timeseriesGroups.summary.task(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Summary Model Response - `SummaryModelResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Summary Task Response - `SummaryTaskResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Bots ## Get AI bots HTTP requests distribution by dimension `client.radar.ai.bots.summaryV2("USER_AGENT" | "CRAWL_PURPOSE" | "INDUSTRY" | 2 moredimension, BotSummaryV2Paramsquery?, RequestOptionsoptions?): BotSummaryV2Response` **get** `/radar/ai/bots/summary/{dimension}` Retrieves an aggregated summary of AI bots HTTP requests grouped by the specified dimension. ### Parameters - `dimension: "USER_AGENT" | "CRAWL_PURPOSE" | "INDUSTRY" | 2 more` Specifies the attribute by which to group the results. - `"USER_AGENT"` - `"CRAWL_PURPOSE"` - `"INDUSTRY"` - `"VERTICAL"` - `"CONTENT_TYPE"` - `query: BotSummaryV2Params` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `contentType?: Array<"HTML" | "IMAGES" | "JSON" | 13 more>` Filters results by content type category. - `"HTML"` - `"IMAGES"` - `"JSON"` - `"JAVASCRIPT"` - `"CSS"` - `"PLAIN_TEXT"` - `"FONTS"` - `"XML"` - `"YAML"` - `"VIDEO"` - `"AUDIO"` - `"MARKDOWN"` - `"DOCUMENTS"` - `"BINARY"` - `"SERIALIZATION"` - `"OTHER"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `crawlPurpose?: Array` Filters results by bot crawl purpose. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `industry?: Array` Filters results by industry. - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `userAgent?: Array` Filters results by user agent. - `vertical?: Array` Filters results by vertical. ### Returns - `BotSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.bots.summaryV2('USER_AGENT'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "Amazonbot": "10.274394", "Bytespider": "8.381743", "facebookexternalhit": "63.40249" } }, "success": true } ``` ## Get AI bots HTTP requests time series `client.radar.ai.bots.timeseries(BotTimeseriesParamsquery?, RequestOptionsoptions?): BotTimeseriesResponse` **get** `/radar/ai/bots/timeseries` Retrieves AI bots HTTP request volume over time. ### Parameters - `query: BotTimeseriesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `contentType?: Array<"HTML" | "IMAGES" | "JSON" | 13 more>` Filters results by content type category. - `"HTML"` - `"IMAGES"` - `"JSON"` - `"JAVASCRIPT"` - `"CSS"` - `"PLAIN_TEXT"` - `"FONTS"` - `"XML"` - `"YAML"` - `"VIDEO"` - `"AUDIO"` - `"MARKDOWN"` - `"DOCUMENTS"` - `"BINARY"` - `"SERIALIZATION"` - `"OTHER"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `crawlPurpose?: Array` Filters results by bot crawl purpose. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `industry?: Array` Filters results by industry. - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `userAgent?: Array` Filters results by user agent. - `vertical?: Array` Filters results by vertical. ### Returns - `BotTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.bots.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] } }, "success": true } ``` ## Get time series distribution of AI bots HTTP requests by dimension. `client.radar.ai.bots.timeseriesGroups("USER_AGENT" | "CRAWL_PURPOSE" | "INDUSTRY" | 2 moredimension, BotTimeseriesGroupsParamsquery?, RequestOptionsoptions?): BotTimeseriesGroupsResponse` **get** `/radar/ai/bots/timeseries_groups/{dimension}` Retrieves the distribution of HTTP requests from AI bots, grouped by the specified dimension over time. ### Parameters - `dimension: "USER_AGENT" | "CRAWL_PURPOSE" | "INDUSTRY" | 2 more` Specifies the attribute by which to group the results. - `"USER_AGENT"` - `"CRAWL_PURPOSE"` - `"INDUSTRY"` - `"VERTICAL"` - `"CONTENT_TYPE"` - `query: BotTimeseriesGroupsParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `contentType?: Array<"HTML" | "IMAGES" | "JSON" | 13 more>` Filters results by content type category. - `"HTML"` - `"IMAGES"` - `"JSON"` - `"JAVASCRIPT"` - `"CSS"` - `"PLAIN_TEXT"` - `"FONTS"` - `"XML"` - `"YAML"` - `"VIDEO"` - `"AUDIO"` - `"MARKDOWN"` - `"DOCUMENTS"` - `"BINARY"` - `"SERIALIZATION"` - `"OTHER"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `crawlPurpose?: Array` Filters results by bot crawl purpose. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `industry?: Array` Filters results by industry. - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `userAgent?: Array` Filters results by user agent. - `vertical?: Array` Filters results by vertical. ### Returns - `BotTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.bots.timeseriesGroups('USER_AGENT'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Bot Summary V2 Response - `BotSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Bot Timeseries Response - `BotTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Bot Timeseries Groups Response - `BotTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Summary ## Get AI user agents summary `client.radar.ai.bots.summary.userAgent(SummaryUserAgentParamsquery?, RequestOptionsoptions?): SummaryUserAgentResponse` **get** `/radar/ai/bots/summary/user_agent` Retrieves the distribution of traffic by AI user agent. ### Parameters - `query: SummaryUserAgentParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryUserAgentResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.bots.summary.userAgent(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "Amazonbot": "10.274394", "Bytespider": "8.381743", "facebookexternalhit": "63.40249" } }, "success": true } ``` ## Domain Types ### Summary User Agent Response - `SummaryUserAgentResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` # Timeseries Groups ## Get AI user agents time series `client.radar.ai.timeseriesGroups.userAgent(TimeseriesGroupUserAgentParamsquery?, RequestOptionsoptions?): TimeseriesGroupUserAgentResponse` **get** `/radar/ai/bots/timeseries_groups/user_agent` Retrieves the distribution of traffic by AI user agent over time. ### Parameters - `query: TimeseriesGroupUserAgentParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `TimeseriesGroupUserAgentResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.timeseriesGroups.userAgent(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get AI bots HTTP requests distribution by dimension `client.radar.ai.timeseriesGroups.summary("USER_AGENT" | "CRAWL_PURPOSE" | "INDUSTRY" | 2 moredimension, TimeseriesGroupSummaryParamsquery?, RequestOptionsoptions?): TimeseriesGroupSummaryResponse` **get** `/radar/ai/bots/summary/{dimension}` Retrieves an aggregated summary of AI bots HTTP requests grouped by the specified dimension. ### Parameters - `dimension: "USER_AGENT" | "CRAWL_PURPOSE" | "INDUSTRY" | 2 more` Specifies the attribute by which to group the results. - `"USER_AGENT"` - `"CRAWL_PURPOSE"` - `"INDUSTRY"` - `"VERTICAL"` - `"CONTENT_TYPE"` - `query: TimeseriesGroupSummaryParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `contentType?: Array<"HTML" | "IMAGES" | "JSON" | 13 more>` Filters results by content type category. - `"HTML"` - `"IMAGES"` - `"JSON"` - `"JAVASCRIPT"` - `"CSS"` - `"PLAIN_TEXT"` - `"FONTS"` - `"XML"` - `"YAML"` - `"VIDEO"` - `"AUDIO"` - `"MARKDOWN"` - `"DOCUMENTS"` - `"BINARY"` - `"SERIALIZATION"` - `"OTHER"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `crawlPurpose?: Array` Filters results by bot crawl purpose. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `industry?: Array` Filters results by industry. - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `userAgent?: Array` Filters results by user agent. - `vertical?: Array` Filters results by vertical. ### Returns - `TimeseriesGroupSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.timeseriesGroups.summary('USER_AGENT'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "Amazonbot": "10.274394", "Bytespider": "8.381743", "facebookexternalhit": "63.40249" } }, "success": true } ``` ## Get AI bots HTTP requests time series `client.radar.ai.timeseriesGroups.timeseries(TimeseriesGroupTimeseriesParamsquery?, RequestOptionsoptions?): TimeseriesGroupTimeseriesResponse` **get** `/radar/ai/bots/timeseries` Retrieves AI bots HTTP request volume over time. ### Parameters - `query: TimeseriesGroupTimeseriesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `contentType?: Array<"HTML" | "IMAGES" | "JSON" | 13 more>` Filters results by content type category. - `"HTML"` - `"IMAGES"` - `"JSON"` - `"JAVASCRIPT"` - `"CSS"` - `"PLAIN_TEXT"` - `"FONTS"` - `"XML"` - `"YAML"` - `"VIDEO"` - `"AUDIO"` - `"MARKDOWN"` - `"DOCUMENTS"` - `"BINARY"` - `"SERIALIZATION"` - `"OTHER"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `crawlPurpose?: Array` Filters results by bot crawl purpose. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `industry?: Array` Filters results by industry. - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `userAgent?: Array` Filters results by user agent. - `vertical?: Array` Filters results by vertical. ### Returns - `TimeseriesGroupTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.timeseriesGroups.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] } }, "success": true } ``` ## Get time series distribution of AI bots HTTP requests by dimension. `client.radar.ai.timeseriesGroups.timeseriesGroups("USER_AGENT" | "CRAWL_PURPOSE" | "INDUSTRY" | 2 moredimension, TimeseriesGroupTimeseriesGroupsParamsquery?, RequestOptionsoptions?): TimeseriesGroupTimeseriesGroupsResponse` **get** `/radar/ai/bots/timeseries_groups/{dimension}` Retrieves the distribution of HTTP requests from AI bots, grouped by the specified dimension over time. ### Parameters - `dimension: "USER_AGENT" | "CRAWL_PURPOSE" | "INDUSTRY" | 2 more` Specifies the attribute by which to group the results. - `"USER_AGENT"` - `"CRAWL_PURPOSE"` - `"INDUSTRY"` - `"VERTICAL"` - `"CONTENT_TYPE"` - `query: TimeseriesGroupTimeseriesGroupsParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `contentType?: Array<"HTML" | "IMAGES" | "JSON" | 13 more>` Filters results by content type category. - `"HTML"` - `"IMAGES"` - `"JSON"` - `"JAVASCRIPT"` - `"CSS"` - `"PLAIN_TEXT"` - `"FONTS"` - `"XML"` - `"YAML"` - `"VIDEO"` - `"AUDIO"` - `"MARKDOWN"` - `"DOCUMENTS"` - `"BINARY"` - `"SERIALIZATION"` - `"OTHER"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `crawlPurpose?: Array` Filters results by bot crawl purpose. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `industry?: Array` Filters results by industry. - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `userAgent?: Array` Filters results by user agent. - `vertical?: Array` Filters results by vertical. ### Returns - `TimeseriesGroupTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ai.timeseriesGroups.timeseriesGroups('USER_AGENT'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Timeseries Group User Agent Response - `TimeseriesGroupUserAgentResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group Summary Response - `TimeseriesGroupSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Timeseries Group Timeseries Response - `TimeseriesGroupTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Timeseries Group Timeseries Groups Response - `TimeseriesGroupTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # CT ## Get certificate distribution by dimension `client.radar.ct.summary("CA" | "CA_OWNER" | "DURATION" | 11 moredimension, CTSummaryParamsquery?, RequestOptionsoptions?): CTSummaryResponse` **get** `/radar/ct/summary/{dimension}` Retrieves an aggregated summary of certificates grouped by the specified dimension. ### Parameters - `dimension: "CA" | "CA_OWNER" | "DURATION" | 11 more` Specifies the certificate attribute by which to group the results. - `"CA"` - `"CA_OWNER"` - `"DURATION"` - `"ENTRY_TYPE"` - `"EXPIRATION_STATUS"` - `"HAS_IPS"` - `"HAS_WILDCARDS"` - `"LOG"` - `"LOG_API"` - `"LOG_OPERATOR"` - `"PUBLIC_KEY_ALGORITHM"` - `"SIGNATURE_ALGORITHM"` - `"TLD"` - `"VALIDATION_LEVEL"` - `query: CTSummaryParams` - `ca?: Array` Filters results by certificate authority. - `caOwner?: Array` Filters results by certificate authority owner. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `duration?: Array<"LTE_3D" | "GT_3D_LTE_7D" | "GT_7D_LTE_10D" | 4 more>` Filters results by certificate duration. - `"LTE_3D"` - `"GT_3D_LTE_7D"` - `"GT_7D_LTE_10D"` - `"GT_10D_LTE_47D"` - `"GT_47D_LTE_100D"` - `"GT_100D_LTE_200D"` - `"GT_200D"` - `entryType?: Array<"PRECERTIFICATE" | "CERTIFICATE">` Filters results by entry type (certificate vs. pre-certificate). - `"PRECERTIFICATE"` - `"CERTIFICATE"` - `expirationStatus?: Array<"EXPIRED" | "VALID">` Filters results by expiration status (expired vs. valid). - `"EXPIRED"` - `"VALID"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `hasIps?: Array` Filters results based on whether the certificates are bound to specific IP addresses. - `hasWildcards?: Array` Filters results based on whether the certificates contain wildcard domains. - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `log?: Array` Filters results by certificate log. - `logApi?: Array<"RFC6962" | "STATIC">` Filters results by certificate log API (RFC6962 vs. static). - `"RFC6962"` - `"STATIC"` - `logOperator?: Array` Filters results by certificate log operator. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "RAW_VALUES" | "PERCENTAGE"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"RAW_VALUES"` - `"PERCENTAGE"` - `publicKeyAlgorithm?: Array<"DSA" | "ECDSA" | "RSA">` Filters results by public key algorithm. - `"DSA"` - `"ECDSA"` - `"RSA"` - `signatureAlgorithm?: Array<"DSA_SHA_1" | "DSA_SHA_256" | "ECDSA_SHA_1" | 12 more>` Filters results by signature algorithm. - `"DSA_SHA_1"` - `"DSA_SHA_256"` - `"ECDSA_SHA_1"` - `"ECDSA_SHA_256"` - `"ECDSA_SHA_384"` - `"ECDSA_SHA_512"` - `"PSS_SHA_256"` - `"PSS_SHA_384"` - `"PSS_SHA_512"` - `"RSA_MD2"` - `"RSA_MD5"` - `"RSA_SHA_1"` - `"RSA_SHA_256"` - `"RSA_SHA_384"` - `"RSA_SHA_512"` - `tld?: Array` Filters results by top-level domain. - `uniqueEntries?: Array<"true" | "false">` Specifies whether to filter out duplicate certificates and pre-certificates. Set to true for unique entries only. - `"true"` - `"false"` - `validationLevel?: Array<"DOMAIN" | "ORGANIZATION" | "EXTENDED">` Filters results by validation level. - `"DOMAIN"` - `"ORGANIZATION"` - `"EXTENDED"` ### Returns - `CTSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record | UnionMember1 | UnionMember2 | 5 more` - `Record` - `UnionMember1` - `rfc6962: string` - `static: string` - `UnionMember2` - `gt_121d: string` - `gt_16d_lte_31d: string` - `gt_31d_lte_91d: string` - `gt_3d_lte_16d: string` - `gt_91d_lte_121d: string` - `lte_3d: string` - `UnionMember3` - `CERTIFICATE: string` - `PRECERTIFICATE: string` - `UnionMember4` - `EXPIRED: string` - `VALID: string` - `UnionMember5` - `NEGATIVE: string` - `POSITIVE: string` - `UnionMember6` - `DSA: string` - `ECDSA: string` - `RSA: string` - `UnionMember7` - `domain: string` - `extended: string` - `organization: string` - `unknown: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ct.summary('CA'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "DigiCert": "10.274394", "GoDaddy": "8.381743", "Internet Security Research Group": "63.40249" } }, "success": true } ``` ## Get certificates time series `client.radar.ct.timeseries(CTTimeseriesParamsquery?, RequestOptionsoptions?): CTTimeseriesResponse` **get** `/radar/ct/timeseries` Retrieves certificate volume over time. ### Parameters - `query: CTTimeseriesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `ca?: Array` Filters results by certificate authority. - `caOwner?: Array` Filters results by certificate authority owner. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `duration?: Array<"LTE_3D" | "GT_3D_LTE_7D" | "GT_7D_LTE_10D" | 4 more>` Filters results by certificate duration. - `"LTE_3D"` - `"GT_3D_LTE_7D"` - `"GT_7D_LTE_10D"` - `"GT_10D_LTE_47D"` - `"GT_47D_LTE_100D"` - `"GT_100D_LTE_200D"` - `"GT_200D"` - `entryType?: Array<"PRECERTIFICATE" | "CERTIFICATE">` Filters results by entry type (certificate vs. pre-certificate). - `"PRECERTIFICATE"` - `"CERTIFICATE"` - `expirationStatus?: Array<"EXPIRED" | "VALID">` Filters results by expiration status (expired vs. valid). - `"EXPIRED"` - `"VALID"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `hasIps?: Array` Filters results based on whether the certificates are bound to specific IP addresses. - `hasWildcards?: Array` Filters results based on whether the certificates contain wildcard domains. - `log?: Array` Filters results by certificate log. - `logApi?: Array<"RFC6962" | "STATIC">` Filters results by certificate log API (RFC6962 vs. static). - `"RFC6962"` - `"STATIC"` - `logOperator?: Array` Filters results by certificate log operator. - `name?: Array` Array of names used to label the series in the response. - `publicKeyAlgorithm?: Array<"DSA" | "ECDSA" | "RSA">` Filters results by public key algorithm. - `"DSA"` - `"ECDSA"` - `"RSA"` - `signatureAlgorithm?: Array<"DSA_SHA_1" | "DSA_SHA_256" | "ECDSA_SHA_1" | 12 more>` Filters results by signature algorithm. - `"DSA_SHA_1"` - `"DSA_SHA_256"` - `"ECDSA_SHA_1"` - `"ECDSA_SHA_256"` - `"ECDSA_SHA_384"` - `"ECDSA_SHA_512"` - `"PSS_SHA_256"` - `"PSS_SHA_384"` - `"PSS_SHA_512"` - `"RSA_MD2"` - `"RSA_MD5"` - `"RSA_SHA_1"` - `"RSA_SHA_256"` - `"RSA_SHA_384"` - `"RSA_SHA_512"` - `tld?: Array` Filters results by top-level domain. - `uniqueEntries?: Array<"true" | "false">` Specifies whether to filter out duplicate certificates and pre-certificates. Set to true for unique entries only. - `"true"` - `"false"` - `validationLevel?: Array<"DOMAIN" | "ORGANIZATION" | "EXTENDED">` Filters results by validation level. - `"DOMAIN"` - `"ORGANIZATION"` - `"EXTENDED"` ### Returns - `CTTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ct.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] } }, "success": true } ``` ## Get time series of certificate distribution by dimension `client.radar.ct.timeseriesGroups("CA" | "CA_OWNER" | "DURATION" | 11 moredimension, CTTimeseriesGroupsParamsquery?, RequestOptionsoptions?): CTTimeseriesGroupsResponse` **get** `/radar/ct/timeseries_groups/{dimension}` Retrieves the distribution of certificates grouped by the specified dimension over time. ### Parameters - `dimension: "CA" | "CA_OWNER" | "DURATION" | 11 more` Specifies the certificate attribute by which to group the results. - `"CA"` - `"CA_OWNER"` - `"DURATION"` - `"ENTRY_TYPE"` - `"EXPIRATION_STATUS"` - `"HAS_IPS"` - `"HAS_WILDCARDS"` - `"LOG"` - `"LOG_API"` - `"LOG_OPERATOR"` - `"PUBLIC_KEY_ALGORITHM"` - `"SIGNATURE_ALGORITHM"` - `"TLD"` - `"VALIDATION_LEVEL"` - `query: CTTimeseriesGroupsParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `ca?: Array` Filters results by certificate authority. - `caOwner?: Array` Filters results by certificate authority owner. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `duration?: Array<"LTE_3D" | "GT_3D_LTE_7D" | "GT_7D_LTE_10D" | 4 more>` Filters results by certificate duration. - `"LTE_3D"` - `"GT_3D_LTE_7D"` - `"GT_7D_LTE_10D"` - `"GT_10D_LTE_47D"` - `"GT_47D_LTE_100D"` - `"GT_100D_LTE_200D"` - `"GT_200D"` - `entryType?: Array<"PRECERTIFICATE" | "CERTIFICATE">` Filters results by entry type (certificate vs. pre-certificate). - `"PRECERTIFICATE"` - `"CERTIFICATE"` - `expirationStatus?: Array<"EXPIRED" | "VALID">` Filters results by expiration status (expired vs. valid). - `"EXPIRED"` - `"VALID"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `hasIps?: Array` Filters results based on whether the certificates are bound to specific IP addresses. - `hasWildcards?: Array` Filters results based on whether the certificates contain wildcard domains. - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `log?: Array` Filters results by certificate log. - `logApi?: Array<"RFC6962" | "STATIC">` Filters results by certificate log API (RFC6962 vs. static). - `"RFC6962"` - `"STATIC"` - `logOperator?: Array` Filters results by certificate log operator. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "RAW_VALUES" | "PERCENTAGE"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"RAW_VALUES"` - `"PERCENTAGE"` - `publicKeyAlgorithm?: Array<"DSA" | "ECDSA" | "RSA">` Filters results by public key algorithm. - `"DSA"` - `"ECDSA"` - `"RSA"` - `signatureAlgorithm?: Array<"DSA_SHA_1" | "DSA_SHA_256" | "ECDSA_SHA_1" | 12 more>` Filters results by signature algorithm. - `"DSA_SHA_1"` - `"DSA_SHA_256"` - `"ECDSA_SHA_1"` - `"ECDSA_SHA_256"` - `"ECDSA_SHA_384"` - `"ECDSA_SHA_512"` - `"PSS_SHA_256"` - `"PSS_SHA_384"` - `"PSS_SHA_512"` - `"RSA_MD2"` - `"RSA_MD5"` - `"RSA_SHA_1"` - `"RSA_SHA_256"` - `"RSA_SHA_384"` - `"RSA_SHA_512"` - `tld?: Array` Filters results by top-level domain. - `uniqueEntries?: Array<"true" | "false">` Specifies whether to filter out duplicate certificates and pre-certificates. Set to true for unique entries only. - `"true"` - `"false"` - `validationLevel?: Array<"DOMAIN" | "ORGANIZATION" | "EXTENDED">` Filters results by validation level. - `"DOMAIN"` - `"ORGANIZATION"` - `"EXTENDED"` ### Returns - `CTTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: UnnamedSchemaRef7826220e105d84352ba1108d9ed88e55 | UnionMember1 | UnionMember2 | 5 more` - `UnnamedSchemaRef7826220e105d84352ba1108d9ed88e55` - `timestamps: Array` - `UnionMember1` - `rfc6962: Array` - `static: Array` - `UnionMember2` - `gt_121d: Array` - `gt_16d_lte_31d: Array` - `gt_31d_lte_91d: Array` - `gt_3d_lte_16d: Array` - `gt_91d_lte_121d: Array` - `lte_3d: Array` - `UnionMember3` - `CERTIFICATE: Array` - `PRECERTIFICATE: Array` - `UnionMember4` - `EXPIRED: Array` - `VALID: Array` - `UnionMember5` - `NEGATIVE: Array` - `POSITIVE: Array` - `UnionMember6` - `DSA: Array` - `ECDSA: Array` - `RSA: Array` - `UnionMember7` - `domain: Array` - `extended: Array` - `organization: Array` - `unknown: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ct.timeseriesGroups('CA'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### CT Summary Response - `CTSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record | UnionMember1 | UnionMember2 | 5 more` - `Record` - `UnionMember1` - `rfc6962: string` - `static: string` - `UnionMember2` - `gt_121d: string` - `gt_16d_lte_31d: string` - `gt_31d_lte_91d: string` - `gt_3d_lte_16d: string` - `gt_91d_lte_121d: string` - `lte_3d: string` - `UnionMember3` - `CERTIFICATE: string` - `PRECERTIFICATE: string` - `UnionMember4` - `EXPIRED: string` - `VALID: string` - `UnionMember5` - `NEGATIVE: string` - `POSITIVE: string` - `UnionMember6` - `DSA: string` - `ECDSA: string` - `RSA: string` - `UnionMember7` - `domain: string` - `extended: string` - `organization: string` - `unknown: string` ### CT Timeseries Response - `CTTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### CT Timeseries Groups Response - `CTTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: UnnamedSchemaRef7826220e105d84352ba1108d9ed88e55 | UnionMember1 | UnionMember2 | 5 more` - `UnnamedSchemaRef7826220e105d84352ba1108d9ed88e55` - `timestamps: Array` - `UnionMember1` - `rfc6962: Array` - `static: Array` - `UnionMember2` - `gt_121d: Array` - `gt_16d_lte_31d: Array` - `gt_31d_lte_91d: Array` - `gt_3d_lte_16d: Array` - `gt_91d_lte_121d: Array` - `lte_3d: Array` - `UnionMember3` - `CERTIFICATE: Array` - `PRECERTIFICATE: Array` - `UnionMember4` - `EXPIRED: Array` - `VALID: Array` - `UnionMember5` - `NEGATIVE: Array` - `POSITIVE: Array` - `UnionMember6` - `DSA: Array` - `ECDSA: Array` - `RSA: Array` - `UnionMember7` - `domain: Array` - `extended: Array` - `organization: Array` - `unknown: Array` # Authorities ## Get certificate authority details `client.radar.ct.authorities.get(stringcaSlug, AuthorityGetParamsquery?, RequestOptionsoptions?): AuthorityGetResponse` **get** `/radar/ct/authorities/{ca_slug}` Retrieves the requested CA information. ### Parameters - `caSlug: string` Certificate authority SHA256 fingerprint. - `query: AuthorityGetParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` ### Returns - `AuthorityGetResponse` - `certificateAuthority: CertificateAuthority` - `appleStatus: "INCLUDED" | "NOT_YET_INCLUDED" | "NOT_INCLUDED" | 4 more` The inclusion status of a Certificate Authority (CA) in the trust store. - `"INCLUDED"` - `"NOT_YET_INCLUDED"` - `"NOT_INCLUDED"` - `"NOT_BEFORE"` - `"REMOVED"` - `"DISABLED"` - `"BLOCKED"` - `authorityKeyIdentifier: string` The authorityKeyIdentifier value extracted from the certificate PEM. - `certificateRecordType: "ROOT_CERTIFICATE" | "INTERMEDIATE_CERTIFICATE"` Specifies the type of certificate in the trust chain. - `"ROOT_CERTIFICATE"` - `"INTERMEDIATE_CERTIFICATE"` - `chromeStatus: "INCLUDED" | "NOT_YET_INCLUDED" | "NOT_INCLUDED" | 4 more` The inclusion status of a Certificate Authority (CA) in the trust store. - `"INCLUDED"` - `"NOT_YET_INCLUDED"` - `"NOT_INCLUDED"` - `"NOT_BEFORE"` - `"REMOVED"` - `"DISABLED"` - `"BLOCKED"` - `country: string` The two-letter ISO country code where the CA organization is based. - `countryName: string` The full country name corresponding to the country code. - `microsoftStatus: "INCLUDED" | "NOT_YET_INCLUDED" | "NOT_INCLUDED" | 4 more` The inclusion status of a Certificate Authority (CA) in the trust store. - `"INCLUDED"` - `"NOT_YET_INCLUDED"` - `"NOT_INCLUDED"` - `"NOT_BEFORE"` - `"REMOVED"` - `"DISABLED"` - `"BLOCKED"` - `mozillaStatus: "INCLUDED" | "NOT_YET_INCLUDED" | "NOT_INCLUDED" | 4 more` The inclusion status of a Certificate Authority (CA) in the trust store. - `"INCLUDED"` - `"NOT_YET_INCLUDED"` - `"NOT_INCLUDED"` - `"NOT_BEFORE"` - `"REMOVED"` - `"DISABLED"` - `"BLOCKED"` - `name: string` The full name of the certificate authority (CA). - `owner: string` The organization that owns and operates the CA. - `parentName: string` The name of the parent/root certificate authority that issued this intermediate certificate. - `parentSha256Fingerprint: string` The SHA-256 fingerprint of the parent certificate. - `related: Array` CAs from the same owner. - `certificateRecordType: "ROOT_CERTIFICATE" | "INTERMEDIATE_CERTIFICATE"` Specifies the type of certificate in the trust chain. - `"ROOT_CERTIFICATE"` - `"INTERMEDIATE_CERTIFICATE"` - `name: string` The full name of the certificate authority (CA). - `revocationStatus: "NOT_REVOKED" | "REVOKED" | "PARENT_CERT_REVOKED"` The current revocation status of a Certificate Authority (CA) certificate. - `"NOT_REVOKED"` - `"REVOKED"` - `"PARENT_CERT_REVOKED"` - `sha256Fingerprint: string` The SHA-256 fingerprint of the intermediate certificate. - `revocationStatus: "NOT_REVOKED" | "REVOKED" | "PARENT_CERT_REVOKED"` The current revocation status of a Certificate Authority (CA) certificate. - `"NOT_REVOKED"` - `"REVOKED"` - `"PARENT_CERT_REVOKED"` - `sha256Fingerprint: string` The SHA-256 fingerprint of the intermediate certificate. - `subjectKeyIdentifier: string` The subjectKeyIdentifier value extracted from the certificate PEM. - `validFrom: string` The start date of the certificate’s validity period (ISO format). - `validTo: string` The end date of the certificate’s validity period (ISO format). ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const authority = await client.radar.ct.authorities.get( '24EDD4E503A8D3FDB5FFB4AF66C887359901CBE687A5A0760D10A08EED99A7C3', ); console.log(authority.certificateAuthority); ``` #### Response ```json { "result": { "certificateAuthority": { "appleStatus": "INCLUDED", "authorityKeyIdentifier": "1TkcnFtvBKqilUzvIN0pdKTFRXE", "certificateRecordType": "ROOT_CERTIFICATE", "chromeStatus": "INCLUDED", "country": "PT", "countryName": "Portugal", "microsoftStatus": "INCLUDED", "mozillaStatus": "INCLUDED", "name": "MULTICERT Advanced Certification Authority 005", "owner": "MULTICERT", "parentName": "MULTICERT Root Certification Authority 01", "parentSha256Fingerprint": "604D32D036895AED3BFEFAEB727C009EC0F2B3CDFA42A1C71730E6A72C3BE9D4", "related": [ { "certificateRecordType": "ROOT_CERTIFICATE", "name": "MULTICERT Advanced Certification Authority 005", "revocationStatus": "NOT_REVOKED", "sha256Fingerprint": "24EDD4E503A8D3FDB5FFB4AF66C887359901CBE687A5A0760D10A08EED99A7C3" } ], "revocationStatus": "NOT_REVOKED", "sha256Fingerprint": "24EDD4E503A8D3FDB5FFB4AF66C887359901CBE687A5A0760D10A08EED99A7C3", "subjectKeyIdentifier": "VbqXmCURhMmiMtD7nFY6iCr4z", "validFrom": "2019-12-09", "validTo": "2032-06-08" } }, "success": true } ``` ## List certificate authorities `client.radar.ct.authorities.list(AuthorityListParamsquery?, RequestOptionsoptions?): AuthorityListResponse` **get** `/radar/ct/authorities` Retrieves a list of certificate authorities. ### Parameters - `query: AuthorityListParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `offset?: number` Skips the specified number of objects before fetching the results. ### Returns - `AuthorityListResponse` - `certificateAuthorities: Array` - `certificateRecordType: "ROOT_CERTIFICATE" | "INTERMEDIATE_CERTIFICATE"` Specifies the type of certificate in the trust chain. - `"ROOT_CERTIFICATE"` - `"INTERMEDIATE_CERTIFICATE"` - `country: string` The two-letter ISO country code where the CA organization is based. - `countryName: string` The full country name corresponding to the country code. - `name: string` The full name of the certificate authority (CA). - `owner: string` The organization that owns and operates the CA. - `parentName: string` The name of the parent/root certificate authority that issued this intermediate certificate. - `parentSha256Fingerprint: string` The SHA-256 fingerprint of the parent certificate. - `revocationStatus: "NOT_REVOKED" | "REVOKED" | "PARENT_CERT_REVOKED"` The current revocation status of a Certificate Authority (CA) certificate. - `"NOT_REVOKED"` - `"REVOKED"` - `"PARENT_CERT_REVOKED"` - `sha256Fingerprint: string` The SHA-256 fingerprint of the intermediate certificate. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const authorities = await client.radar.ct.authorities.list(); console.log(authorities.certificateAuthorities); ``` #### Response ```json { "result": { "certificateAuthorities": [ { "certificateRecordType": "ROOT_CERTIFICATE", "country": "PT", "countryName": "Portugal", "name": "MULTICERT Advanced Certification Authority 005", "owner": "MULTICERT", "parentName": "MULTICERT Root Certification Authority 01", "parentSha256Fingerprint": "24EDD4E503A8D3FDB5FFB4AF66C887359901CBE687A5A0760D10A08EED99A7C3", "revocationStatus": "NOT_REVOKED", "sha256Fingerprint": "24EDD4E503A8D3FDB5FFB4AF66C887359901CBE687A5A0760D10A08EED99A7C3" } ] }, "success": true } ``` ## Domain Types ### Authority Get Response - `AuthorityGetResponse` - `certificateAuthority: CertificateAuthority` - `appleStatus: "INCLUDED" | "NOT_YET_INCLUDED" | "NOT_INCLUDED" | 4 more` The inclusion status of a Certificate Authority (CA) in the trust store. - `"INCLUDED"` - `"NOT_YET_INCLUDED"` - `"NOT_INCLUDED"` - `"NOT_BEFORE"` - `"REMOVED"` - `"DISABLED"` - `"BLOCKED"` - `authorityKeyIdentifier: string` The authorityKeyIdentifier value extracted from the certificate PEM. - `certificateRecordType: "ROOT_CERTIFICATE" | "INTERMEDIATE_CERTIFICATE"` Specifies the type of certificate in the trust chain. - `"ROOT_CERTIFICATE"` - `"INTERMEDIATE_CERTIFICATE"` - `chromeStatus: "INCLUDED" | "NOT_YET_INCLUDED" | "NOT_INCLUDED" | 4 more` The inclusion status of a Certificate Authority (CA) in the trust store. - `"INCLUDED"` - `"NOT_YET_INCLUDED"` - `"NOT_INCLUDED"` - `"NOT_BEFORE"` - `"REMOVED"` - `"DISABLED"` - `"BLOCKED"` - `country: string` The two-letter ISO country code where the CA organization is based. - `countryName: string` The full country name corresponding to the country code. - `microsoftStatus: "INCLUDED" | "NOT_YET_INCLUDED" | "NOT_INCLUDED" | 4 more` The inclusion status of a Certificate Authority (CA) in the trust store. - `"INCLUDED"` - `"NOT_YET_INCLUDED"` - `"NOT_INCLUDED"` - `"NOT_BEFORE"` - `"REMOVED"` - `"DISABLED"` - `"BLOCKED"` - `mozillaStatus: "INCLUDED" | "NOT_YET_INCLUDED" | "NOT_INCLUDED" | 4 more` The inclusion status of a Certificate Authority (CA) in the trust store. - `"INCLUDED"` - `"NOT_YET_INCLUDED"` - `"NOT_INCLUDED"` - `"NOT_BEFORE"` - `"REMOVED"` - `"DISABLED"` - `"BLOCKED"` - `name: string` The full name of the certificate authority (CA). - `owner: string` The organization that owns and operates the CA. - `parentName: string` The name of the parent/root certificate authority that issued this intermediate certificate. - `parentSha256Fingerprint: string` The SHA-256 fingerprint of the parent certificate. - `related: Array` CAs from the same owner. - `certificateRecordType: "ROOT_CERTIFICATE" | "INTERMEDIATE_CERTIFICATE"` Specifies the type of certificate in the trust chain. - `"ROOT_CERTIFICATE"` - `"INTERMEDIATE_CERTIFICATE"` - `name: string` The full name of the certificate authority (CA). - `revocationStatus: "NOT_REVOKED" | "REVOKED" | "PARENT_CERT_REVOKED"` The current revocation status of a Certificate Authority (CA) certificate. - `"NOT_REVOKED"` - `"REVOKED"` - `"PARENT_CERT_REVOKED"` - `sha256Fingerprint: string` The SHA-256 fingerprint of the intermediate certificate. - `revocationStatus: "NOT_REVOKED" | "REVOKED" | "PARENT_CERT_REVOKED"` The current revocation status of a Certificate Authority (CA) certificate. - `"NOT_REVOKED"` - `"REVOKED"` - `"PARENT_CERT_REVOKED"` - `sha256Fingerprint: string` The SHA-256 fingerprint of the intermediate certificate. - `subjectKeyIdentifier: string` The subjectKeyIdentifier value extracted from the certificate PEM. - `validFrom: string` The start date of the certificate’s validity period (ISO format). - `validTo: string` The end date of the certificate’s validity period (ISO format). ### Authority List Response - `AuthorityListResponse` - `certificateAuthorities: Array` - `certificateRecordType: "ROOT_CERTIFICATE" | "INTERMEDIATE_CERTIFICATE"` Specifies the type of certificate in the trust chain. - `"ROOT_CERTIFICATE"` - `"INTERMEDIATE_CERTIFICATE"` - `country: string` The two-letter ISO country code where the CA organization is based. - `countryName: string` The full country name corresponding to the country code. - `name: string` The full name of the certificate authority (CA). - `owner: string` The organization that owns and operates the CA. - `parentName: string` The name of the parent/root certificate authority that issued this intermediate certificate. - `parentSha256Fingerprint: string` The SHA-256 fingerprint of the parent certificate. - `revocationStatus: "NOT_REVOKED" | "REVOKED" | "PARENT_CERT_REVOKED"` The current revocation status of a Certificate Authority (CA) certificate. - `"NOT_REVOKED"` - `"REVOKED"` - `"PARENT_CERT_REVOKED"` - `sha256Fingerprint: string` The SHA-256 fingerprint of the intermediate certificate. # Logs ## Get certificate log details `client.radar.ct.logs.get(stringlogSlug, LogGetParamsquery?, RequestOptionsoptions?): LogGetResponse` **get** `/radar/ct/logs/{log_slug}` Retrieves the requested certificate log information. ### Parameters - `logSlug: string` Certificate log slug. - `query: LogGetParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` ### Returns - `LogGetResponse` - `certificateLog: CertificateLog` - `api: "RFC6962" | "STATIC"` The API standard that the certificate log follows. - `"RFC6962"` - `"STATIC"` - `avgThroughput: number` The average throughput of the CT log, measured in certificates per hour (certs/hour). - `description: string` A brief description of the certificate log. - `endExclusive: string` The end date and time for when the log will stop accepting certificates. - `lastUpdate: string` Timestamp of the most recent update to the CT log. - `operator: string` The organization responsible for operating the certificate log. - `performance: Performance | null` Log performance metrics, including averages and per-endpoint details. - `endpoints: Array` - `endpoint: "add-chain (new)" | "add-chain (old)" | "add-pre-chain (new)" | 4 more` The certificate log endpoint names used in performance metrics. - `"add-chain (new)"` - `"add-chain (old)"` - `"add-pre-chain (new)"` - `"add-pre-chain (old)"` - `"get-entries"` - `"get-roots"` - `"get-sth"` - `responseTime: number` - `uptime: number` - `responseTime: number` - `uptime: number` - `related: Array` Logs from the same operator. - `description: string` A brief description of the certificate log. - `endExclusive: string` The end date and time for when the log will stop accepting certificates. - `slug: string` A URL-friendly, kebab-case identifier for the certificate log. - `startInclusive: string` The start date and time for when the log starts accepting certificates. - `state: "USABLE" | "PENDING" | "QUALIFIED" | 3 more` The current state of the certificate log. More details about log states can be found here: https://googlechrome.github.io/CertificateTransparency/log_states.html - `"USABLE"` - `"PENDING"` - `"QUALIFIED"` - `"READ_ONLY"` - `"RETIRED"` - `"REJECTED"` - `slug: string` A URL-friendly, kebab-case identifier for the certificate log. - `startInclusive: string` The start date and time for when the log starts accepting certificates. - `state: "USABLE" | "PENDING" | "QUALIFIED" | 3 more` The current state of the certificate log. More details about log states can be found here: https://googlechrome.github.io/CertificateTransparency/log_states.html - `"USABLE"` - `"PENDING"` - `"QUALIFIED"` - `"READ_ONLY"` - `"RETIRED"` - `"REJECTED"` - `stateTimestamp: string` Timestamp of when the log state was last updated. - `submittableCertCount: string | null` Number of certificates that are eligible for inclusion to this log but have not been included yet. Based on certificates signed by trusted root CAs within the log's accepted date range. - `submittedCertCount: string | null` Number of certificates already included in this CT log. - `url: string` The URL for the certificate log. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const log = await client.radar.ct.logs.get('argon2024'); console.log(log.certificateLog); ``` #### Response ```json { "result": { "certificateLog": { "api": "RFC6962", "avgThroughput": 0, "description": "Google 'Argon2024' log", "endExclusive": "2025-01-01T00:00:00Z", "lastUpdate": "2025-01-01T00:00:00Z", "operator": "Google", "performance": { "endpoints": [ { "endpoint": "add-chain (new)", "responseTime": 0, "uptime": 0 } ], "responseTime": 0, "uptime": 0 }, "related": [ { "description": "Google 'Argon2024' log", "endExclusive": "2025-01-01T00:00:00Z", "slug": "argon2024", "startInclusive": "2024-01-01T00:00:00Z", "state": "USABLE" } ], "slug": "argon2024", "startInclusive": "2024-01-01T00:00:00Z", "state": "USABLE", "stateTimestamp": "2025-02-01T08:53:20Z", "submittableCertCount": "10", "submittedCertCount": "10", "url": "https://ct.googleapis.com/logs/us1/argon2024/" } }, "success": true } ``` ## List certificate logs `client.radar.ct.logs.list(LogListParamsquery?, RequestOptionsoptions?): LogListResponse` **get** `/radar/ct/logs` Retrieves a list of certificate logs. ### Parameters - `query: LogListParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `offset?: number` Skips the specified number of objects before fetching the results. ### Returns - `LogListResponse` - `certificateLogs: Array` - `api: "RFC6962" | "STATIC"` The API standard that the certificate log follows. - `"RFC6962"` - `"STATIC"` - `description: string` A brief description of the certificate log. - `endExclusive: string` The end date and time for when the log will stop accepting certificates. - `operator: string` The organization responsible for operating the certificate log. - `slug: string` A URL-friendly, kebab-case identifier for the certificate log. - `startInclusive: string` The start date and time for when the log starts accepting certificates. - `state: "USABLE" | "PENDING" | "QUALIFIED" | 3 more` The current state of the certificate log. More details about log states can be found here: https://googlechrome.github.io/CertificateTransparency/log_states.html - `"USABLE"` - `"PENDING"` - `"QUALIFIED"` - `"READ_ONLY"` - `"RETIRED"` - `"REJECTED"` - `stateTimestamp: string` Timestamp of when the log state was last updated. - `url: string` The URL for the certificate log. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const logs = await client.radar.ct.logs.list(); console.log(logs.certificateLogs); ``` #### Response ```json { "result": { "certificateLogs": [ { "api": "RFC6962", "description": "Google 'Argon2024' log", "endExclusive": "2025-01-01T00:00:00Z", "operator": "Google", "slug": "argon2024", "startInclusive": "2024-01-01T00:00:00Z", "state": "USABLE", "stateTimestamp": "2025-02-01T08:53:20Z", "url": "https://ct.googleapis.com/logs/us1/argon2024/" } ] }, "success": true } ``` ## Domain Types ### Log Get Response - `LogGetResponse` - `certificateLog: CertificateLog` - `api: "RFC6962" | "STATIC"` The API standard that the certificate log follows. - `"RFC6962"` - `"STATIC"` - `avgThroughput: number` The average throughput of the CT log, measured in certificates per hour (certs/hour). - `description: string` A brief description of the certificate log. - `endExclusive: string` The end date and time for when the log will stop accepting certificates. - `lastUpdate: string` Timestamp of the most recent update to the CT log. - `operator: string` The organization responsible for operating the certificate log. - `performance: Performance | null` Log performance metrics, including averages and per-endpoint details. - `endpoints: Array` - `endpoint: "add-chain (new)" | "add-chain (old)" | "add-pre-chain (new)" | 4 more` The certificate log endpoint names used in performance metrics. - `"add-chain (new)"` - `"add-chain (old)"` - `"add-pre-chain (new)"` - `"add-pre-chain (old)"` - `"get-entries"` - `"get-roots"` - `"get-sth"` - `responseTime: number` - `uptime: number` - `responseTime: number` - `uptime: number` - `related: Array` Logs from the same operator. - `description: string` A brief description of the certificate log. - `endExclusive: string` The end date and time for when the log will stop accepting certificates. - `slug: string` A URL-friendly, kebab-case identifier for the certificate log. - `startInclusive: string` The start date and time for when the log starts accepting certificates. - `state: "USABLE" | "PENDING" | "QUALIFIED" | 3 more` The current state of the certificate log. More details about log states can be found here: https://googlechrome.github.io/CertificateTransparency/log_states.html - `"USABLE"` - `"PENDING"` - `"QUALIFIED"` - `"READ_ONLY"` - `"RETIRED"` - `"REJECTED"` - `slug: string` A URL-friendly, kebab-case identifier for the certificate log. - `startInclusive: string` The start date and time for when the log starts accepting certificates. - `state: "USABLE" | "PENDING" | "QUALIFIED" | 3 more` The current state of the certificate log. More details about log states can be found here: https://googlechrome.github.io/CertificateTransparency/log_states.html - `"USABLE"` - `"PENDING"` - `"QUALIFIED"` - `"READ_ONLY"` - `"RETIRED"` - `"REJECTED"` - `stateTimestamp: string` Timestamp of when the log state was last updated. - `submittableCertCount: string | null` Number of certificates that are eligible for inclusion to this log but have not been included yet. Based on certificates signed by trusted root CAs within the log's accepted date range. - `submittedCertCount: string | null` Number of certificates already included in this CT log. - `url: string` The URL for the certificate log. ### Log List Response - `LogListResponse` - `certificateLogs: Array` - `api: "RFC6962" | "STATIC"` The API standard that the certificate log follows. - `"RFC6962"` - `"STATIC"` - `description: string` A brief description of the certificate log. - `endExclusive: string` The end date and time for when the log will stop accepting certificates. - `operator: string` The organization responsible for operating the certificate log. - `slug: string` A URL-friendly, kebab-case identifier for the certificate log. - `startInclusive: string` The start date and time for when the log starts accepting certificates. - `state: "USABLE" | "PENDING" | "QUALIFIED" | 3 more` The current state of the certificate log. More details about log states can be found here: https://googlechrome.github.io/CertificateTransparency/log_states.html - `"USABLE"` - `"PENDING"` - `"QUALIFIED"` - `"READ_ONLY"` - `"RETIRED"` - `"REJECTED"` - `stateTimestamp: string` Timestamp of when the log state was last updated. - `url: string` The URL for the certificate log. # Annotations ## Get latest annotations `client.radar.annotations.list(AnnotationListParamsquery?, RequestOptionsoptions?): AnnotationListResponse` **get** `/radar/annotations` Retrieves the latest annotations. ### Parameters - `query: AnnotationListParams` - `asn?: number` Filters results by Autonomous System. Specify a single Autonomous System Number (ASN) as integer. - `dataSource?: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Filters results by data source. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `dateEnd?: string` End of the date range (inclusive). - `dateRange?: string` Filters results by date range. - `dateStart?: string` Start of the date range (inclusive). - `eventType?: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Filters results by event type. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: string` Filters results by location. Specify an alpha-2 location code. - `offset?: number` Skips the specified number of objects before fetching the results. - `origin?: string` Filters results by origin. ### Returns - `AnnotationListResponse` - `annotations: Array` - `id: string` - `asns: Array` - `asnsDetails: Array` - `asn: string` - `name: string` - `locations?: Locations` - `code: string` - `name: string` - `dataSource: string` - `eventType: string` - `locations: Array` - `locationsDetails: Array` - `code: string` - `name: string` - `origins: Array` - `originsDetails: Array` - `name: string` - `origin: string` - `outage: Outage` - `outageCause: string` - `outageType: string` - `startDate: string` - `description?: string` - `endDate?: string` - `linkedUrl?: string` - `scope?: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const annotations = await client.radar.annotations.list(); console.log(annotations.annotations); ``` #### Response ```json { "result": { "annotations": [ { "id": "550", "asns": [ 189 ], "asnsDetails": [ { "asn": "189", "name": "LUMEN-LEGACY-L3-PARTITION", "locations": { "code": "US", "name": "United States" } } ], "dataSource": "ALL", "eventType": "OUTAGE", "locations": [ "US" ], "locationsDetails": [ { "code": "US", "name": "United States" } ], "origins": [ "amazon-us-east-1" ], "originsDetails": [ { "name": "us-east-1 Amazon Web Services", "origin": "amazon-us-east-1" } ], "outage": { "outageCause": "CABLE_CUT", "outageType": "NATIONWIDE" }, "startDate": "2022-09-06T10:00:28Z", "description": "example", "endDate": "2022-09-08T10:00:28Z", "linkedUrl": "http://example.com", "scope": "Colima, Michoacán, México" } ] }, "success": true } ``` ## Domain Types ### Annotation List Response - `AnnotationListResponse` - `annotations: Array` - `id: string` - `asns: Array` - `asnsDetails: Array` - `asn: string` - `name: string` - `locations?: Locations` - `code: string` - `name: string` - `dataSource: string` - `eventType: string` - `locations: Array` - `locationsDetails: Array` - `code: string` - `name: string` - `origins: Array` - `originsDetails: Array` - `name: string` - `origin: string` - `outage: Outage` - `outageCause: string` - `outageType: string` - `startDate: string` - `description?: string` - `endDate?: string` - `linkedUrl?: string` - `scope?: string` # Outages ## Get latest Internet outages and anomalies `client.radar.annotations.outages.get(OutageGetParamsquery?, RequestOptionsoptions?): OutageGetResponse` **get** `/radar/annotations/outages` Retrieves the latest Internet outages and anomalies. ### Parameters - `query: OutageGetParams` - `asn?: number` Filters results by Autonomous System. Specify a single Autonomous System Number (ASN) as integer. - `dateEnd?: string` End of the date range (inclusive). - `dateRange?: string` Filters results by date range. - `dateStart?: string` Start of the date range (inclusive). - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: string` Filters results by location. Specify an alpha-2 location code. - `offset?: number` Skips the specified number of objects before fetching the results. - `origin?: string` Filters results by origin. ### Returns - `OutageGetResponse` - `annotations: Array` - `id: string` - `asns: Array` - `asnsDetails: Array` - `asn: string` - `name: string` - `locations?: Locations` - `code: string` - `name: string` - `dataSource: string` - `eventType: string` - `locations: Array` - `locationsDetails: Array` - `code: string` - `name: string` - `origins: Array` - `originsDetails: Array` - `name: string` - `origin: string` - `outage: Outage` - `outageCause: string` - `outageType: string` - `startDate: string` - `description?: string` - `endDate?: string` - `linkedUrl?: string` - `scope?: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const outage = await client.radar.annotations.outages.get(); console.log(outage.annotations); ``` #### Response ```json { "result": { "annotations": [ { "id": "550", "asns": [ 189 ], "asnsDetails": [ { "asn": "189", "name": "LUMEN-LEGACY-L3-PARTITION", "locations": { "code": "US", "name": "United States" } } ], "dataSource": "ALL", "eventType": "OUTAGE", "locations": [ "US" ], "locationsDetails": [ { "code": "US", "name": "United States" } ], "origins": [ "amazon-us-east-1" ], "originsDetails": [ { "name": "us-east-1 Amazon Web Services", "origin": "amazon-us-east-1" } ], "outage": { "outageCause": "CABLE_CUT", "outageType": "NATIONWIDE" }, "startDate": "2019-12-27T18:11:19.117Z", "description": "example", "endDate": "2019-12-27T18:11:19.117Z", "linkedUrl": "http://example.com", "scope": "Colima, Michoacán, México" } ] }, "success": true } ``` ## Get the number of outages by location `client.radar.annotations.outages.locations(OutageLocationsParamsquery?, RequestOptionsoptions?): OutageLocationsResponse` **get** `/radar/annotations/outages/locations` Retrieves the number of outages by location. ### Parameters - `query: OutageLocationsParams` - `dateEnd?: string` End of the date range (inclusive). - `dateRange?: string` Filters results by date range. - `dateStart?: string` Start of the date range (inclusive). - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. ### Returns - `OutageLocationsResponse` - `annotations: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.annotations.outages.locations(); console.log(response.annotations); ``` #### Response ```json { "result": { "annotations": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Outage Get Response - `OutageGetResponse` - `annotations: Array` - `id: string` - `asns: Array` - `asnsDetails: Array` - `asn: string` - `name: string` - `locations?: Locations` - `code: string` - `name: string` - `dataSource: string` - `eventType: string` - `locations: Array` - `locationsDetails: Array` - `code: string` - `name: string` - `origins: Array` - `originsDetails: Array` - `name: string` - `origin: string` - `outage: Outage` - `outageCause: string` - `outageType: string` - `startDate: string` - `description?: string` - `endDate?: string` - `linkedUrl?: string` - `scope?: string` ### Outage Locations Response - `OutageLocationsResponse` - `annotations: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # BGP ## Get BGP time series `client.radar.bgp.timeseries(BGPTimeseriesParamsquery?, RequestOptionsoptions?): BGPTimeseriesResponse` **get** `/radar/bgp/timeseries` Retrieves BGP updates over time. When requesting updates for an autonomous system, only BGP updates of type announcement are returned. ### Parameters - `query: BGPTimeseriesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `prefix?: Array` Filters results by BGP network prefix. - `updateType?: Array<"ANNOUNCEMENT" | "WITHDRAWAL">` Filters results by BGP update type. - `"ANNOUNCEMENT"` - `"WITHDRAWAL"` ### Returns - `BGPTimeseriesResponse` - `meta: Meta` - `aggInterval: "15m" | "1h" | "1d" | "1w"` - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` - `serie_0: Serie0` - `timestamps: Array` - `values: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bgp.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "15m", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z" }, "serie_0": { "timestamps": [ "2019-12-27T18:11:19.117Z" ], "values": [ "10" ] } }, "success": true } ``` ## Domain Types ### BGP Timeseries Response - `BGPTimeseriesResponse` - `meta: Meta` - `aggInterval: "15m" | "1h" | "1d" | "1w"` - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` - `serie_0: Serie0` - `timestamps: Array` - `values: Array` # Leaks # Events ## Get BGP route leak events `client.radar.bgp.leaks.events.list(EventListParamsquery?, RequestOptionsoptions?): V4PagePagination` **get** `/radar/bgp/leaks/events` Retrieves the BGP route leak events. ### Parameters - `query: EventListParams` - `dateEnd?: string` End of the date range (inclusive). - `dateRange?: string` Filters results by date range. - `dateStart?: string` Start of the date range (inclusive). - `eventId?: number` The unique identifier of a event. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `involvedAsn?: number` ASN that is causing or affected by a route leak event. - `involvedCountry?: string` Country code of a involved ASN in a route leak event. - `leakAsn?: number` The leaking AS of a route leak event. - `page?: number` Current page number, starting from 1. - `per_page?: number` Number of entries per page. - `sortBy?: "ID" | "LEAKS" | "PEERS" | 3 more` Sorts results by the specified field. - `"ID"` - `"LEAKS"` - `"PEERS"` - `"PREFIXES"` - `"ORIGINS"` - `"TIME"` - `sortOrder?: "ASC" | "DESC"` Sort order. - `"ASC"` - `"DESC"` ### Returns - `EventListResponse` - `asn_info: Array` - `asn: number` - `country_code: string` - `org_name: string` - `events: Array` - `id: number` - `countries: Array` - `detected_ts: string` - `finished: boolean` - `leak_asn: number` - `leak_count: number` - `leak_seg: Array` - `leak_type: number` - `max_ts: string` - `min_ts: string` - `origin_count: number` - `peer_count: number` - `prefix_count: number` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); // Automatically fetches more pages as needed. for await (const eventListResponse of client.radar.bgp.leaks.events.list()) { console.log(eventListResponse.asn_info); } ``` #### Response ```json { "result": { "asn_info": [ { "asn": 0, "country_code": "country_code", "org_name": "org_name" } ], "events": [ { "id": 0, "countries": [ "string" ], "detected_ts": "detected_ts", "finished": true, "leak_asn": 0, "leak_count": 0, "leak_seg": [ 0 ], "leak_type": 0, "max_ts": "max_ts", "min_ts": "min_ts", "origin_count": 0, "peer_count": 0, "prefix_count": 0 } ] }, "result_info": { "count": 0, "page": 0, "per_page": 0, "total_count": 0 }, "success": true } ``` ## Domain Types ### Event List Response - `EventListResponse` - `asn_info: Array` - `asn: number` - `country_code: string` - `org_name: string` - `events: Array` - `id: number` - `countries: Array` - `detected_ts: string` - `finished: boolean` - `leak_asn: number` - `leak_count: number` - `leak_seg: Array` - `leak_type: number` - `max_ts: string` - `min_ts: string` - `origin_count: number` - `peer_count: number` - `prefix_count: number` # Top ## Get top prefixes by BGP updates `client.radar.bgp.top.prefixes(TopPrefixesParamsquery?, RequestOptionsoptions?): TopPrefixesResponse` **get** `/radar/bgp/top/prefixes` Retrieves the top network prefixes by BGP updates. ### Parameters - `query: TopPrefixesParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `name?: Array` Array of names used to label the series in the response. - `updateType?: Array<"ANNOUNCEMENT" | "WITHDRAWAL">` Filters results by BGP update type. - `"ANNOUNCEMENT"` - `"WITHDRAWAL"` ### Returns - `TopPrefixesResponse` - `meta: Meta` - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `top_0: Array` - `prefix: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bgp.top.prefixes(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ] }, "top_0": [ { "prefix": "2804:77cc:8000::/33", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Top Prefixes Response - `TopPrefixesResponse` - `meta: Meta` - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `top_0: Array` - `prefix: string` - `value: string` A numeric string. # Ases ## Get top ASes by BGP updates `client.radar.bgp.top.ases.get(AseGetParamsquery?, RequestOptionsoptions?): AseGetResponse` **get** `/radar/bgp/top/ases` Retrieves the top autonomous systems by BGP updates (announcements only). ### Parameters - `query: AseGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `name?: Array` Array of names used to label the series in the response. - `prefix?: Array` Filters results by BGP network prefix. - `updateType?: Array<"ANNOUNCEMENT" | "WITHDRAWAL">` Filters results by BGP update type. - `"ANNOUNCEMENT"` - `"WITHDRAWAL"` ### Returns - `AseGetResponse` - `meta: Meta` - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `top_0: Array` - `asn: number` - `ASName: string` - `value: string` Percentage of updates by this AS out of the total updates by all autonomous systems. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const ase = await client.radar.bgp.top.ases.get(); console.log(ase.meta); ``` #### Response ```json { "result": { "meta": { "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ] }, "top_0": [ { "asn": 714, "ASName": "Apple-Engineering", "value": "0.73996" } ] }, "success": true } ``` ## Get top ASes by prefix count `client.radar.bgp.top.ases.prefixes(AsePrefixesParamsquery?, RequestOptionsoptions?): AsePrefixesResponse` **get** `/radar/bgp/top/ases/prefixes` Retrieves the full list of autonomous systems on the global routing table ordered by announced prefixes count. The data comes from public BGP MRT data archives and updates every 2 hours. ### Parameters - `query: AsePrefixesParams` - `country?: string` Alpha-2 country code. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Maximum number of ASes to return. ### Returns - `AsePrefixesResponse` - `asns: Array` - `asn: number` - `country: string` - `name: string` - `pfxs_count: number` - `meta: Meta` - `data_time: string` - `query_time: string` - `total_peers: number` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bgp.top.ases.prefixes(); console.log(response.asns); ``` #### Response ```json { "result": { "asns": [ { "asn": 0, "country": "country", "name": "name", "pfxs_count": 0 } ], "meta": { "data_time": "data_time", "query_time": "query_time", "total_peers": 0 } }, "success": true } ``` ## Domain Types ### Ase Get Response - `AseGetResponse` - `meta: Meta` - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `top_0: Array` - `asn: number` - `ASName: string` - `value: string` Percentage of updates by this AS out of the total updates by all autonomous systems. ### Ase Prefixes Response - `AsePrefixesResponse` - `asns: Array` - `asn: number` - `country: string` - `name: string` - `pfxs_count: number` - `meta: Meta` - `data_time: string` - `query_time: string` - `total_peers: number` # Hijacks # Events ## Get BGP hijack events `client.radar.bgp.hijacks.events.list(EventListParamsquery?, RequestOptionsoptions?): V4PagePagination` **get** `/radar/bgp/hijacks/events` Retrieves the BGP hijack events. ### Parameters - `query: EventListParams` - `dateEnd?: string` End of the date range (inclusive). - `dateRange?: string` Filters results by date range. - `dateStart?: string` Start of the date range (inclusive). - `eventId?: number` The unique identifier of a event. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `hijackerAsn?: number` The potential hijacker AS of a BGP hijack event. - `involvedAsn?: number` The potential hijacker or victim AS of a BGP hijack event. - `involvedCountry?: string` The country code of the potential hijacker or victim AS of a BGP hijack event. - `maxConfidence?: number` Filters events by maximum confidence score (1-4 low, 5-7 mid, 8+ high). - `minConfidence?: number` Filters events by minimum confidence score (1-4 low, 5-7 mid, 8+ high). - `page?: number` Current page number, starting from 1. - `per_page?: number` Number of entries per page. - `prefix?: string` - `sortBy?: "ID" | "TIME" | "CONFIDENCE"` Sorts results by the specified field. - `"ID"` - `"TIME"` - `"CONFIDENCE"` - `sortOrder?: "ASC" | "DESC"` Sort order. - `"ASC"` - `"DESC"` - `victimAsn?: number` The potential victim AS of a BGP hijack event. ### Returns - `EventListResponse` - `asn_info: Array` - `asn: number` - `country_code: string` - `org_name: string` - `events: Array` - `id: number` - `confidence_score: number` - `duration: number` - `event_type: number` - `hijack_msgs_count: number` - `hijacker_asn: number` - `hijacker_country: string` - `is_stale: boolean` - `max_hijack_ts: string` - `max_msg_ts: string` - `min_hijack_ts: string` - `on_going_count: number` - `peer_asns: Array` - `peer_ip_count: number` - `prefixes: Array` - `tags: Array` - `name: string` - `score: number` - `victim_asns: Array` - `victim_countries: Array` - `total_monitors: number` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); // Automatically fetches more pages as needed. for await (const eventListResponse of client.radar.bgp.hijacks.events.list()) { console.log(eventListResponse.asn_info); } ``` #### Response ```json { "result": { "asn_info": [ { "asn": 0, "country_code": "country_code", "org_name": "org_name" } ], "events": [ { "id": 0, "confidence_score": 0, "duration": 0, "event_type": 0, "hijack_msgs_count": 0, "hijacker_asn": 0, "hijacker_country": "hijacker_country", "is_stale": true, "max_hijack_ts": "max_hijack_ts", "max_msg_ts": "max_msg_ts", "min_hijack_ts": "min_hijack_ts", "on_going_count": 0, "peer_asns": [ 0 ], "peer_ip_count": 0, "prefixes": [ "string" ], "tags": [ { "name": "name", "score": 0 } ], "victim_asns": [ 0 ], "victim_countries": [ "string" ] } ], "total_monitors": 0 }, "result_info": { "count": 0, "page": 0, "per_page": 0, "total_count": 0 }, "success": true } ``` ## Domain Types ### Event List Response - `EventListResponse` - `asn_info: Array` - `asn: number` - `country_code: string` - `org_name: string` - `events: Array` - `id: number` - `confidence_score: number` - `duration: number` - `event_type: number` - `hijack_msgs_count: number` - `hijacker_asn: number` - `hijacker_country: string` - `is_stale: boolean` - `max_hijack_ts: string` - `max_msg_ts: string` - `min_hijack_ts: string` - `on_going_count: number` - `peer_asns: Array` - `peer_ip_count: number` - `prefixes: Array` - `tags: Array` - `name: string` - `score: number` - `victim_asns: Array` - `victim_countries: Array` - `total_monitors: number` # Routes ## Get Multi-Origin AS (MOAS) prefixes `client.radar.bgp.routes.moas(RouteMoasParamsquery?, RequestOptionsoptions?): RouteMoasResponse` **get** `/radar/bgp/routes/moas` Retrieves all Multi-Origin AS (MOAS) prefixes in the global routing tables. ### Parameters - `query: RouteMoasParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `invalid_only?: boolean` Lookup only RPKI invalid MOASes. - `origin?: number` Lookup MOASes originated by the given ASN. - `prefix?: string` ### Returns - `RouteMoasResponse` - `meta: Meta` - `data_time: string` - `query_time: string` - `total_peers: number` - `moas: Array` - `origins: Array` - `origin: number` - `peer_count: number` - `rpki_validation: string` - `prefix: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bgp.routes.moas(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "data_time": "data_time", "query_time": "query_time", "total_peers": 0 }, "moas": [ { "origins": [ { "origin": 0, "peer_count": 0, "rpki_validation": "rpki_validation" } ], "prefix": "prefix" } ] }, "success": true } ``` ## Get prefix-to-ASN mapping `client.radar.bgp.routes.pfx2as(RoutePfx2asParamsquery?, RequestOptionsoptions?): RoutePfx2asResponse` **get** `/radar/bgp/routes/pfx2as` Retrieves the prefix-to-ASN mapping from global routing tables. ### Parameters - `query: RoutePfx2asParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `longestPrefixMatch?: boolean` 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. - `origin?: number` Lookup prefixes originated by the given ASN. - `prefix?: string` - `rpkiStatus?: "VALID" | "INVALID" | "UNKNOWN"` Return only results with matching rpki status: valid, invalid or unknown. - `"VALID"` - `"INVALID"` - `"UNKNOWN"` ### Returns - `RoutePfx2asResponse` - `meta: Meta` - `data_time: string` - `query_time: string` - `total_peers: number` - `prefix_origins: Array` - `origin: number` - `peer_count: number` - `prefix: string` - `rpki_validation: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bgp.routes.pfx2as(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "data_time": "data_time", "query_time": "query_time", "total_peers": 0 }, "prefix_origins": [ { "origin": 0, "peer_count": 0, "prefix": "prefix", "rpki_validation": "rpki_validation" } ] }, "success": true } ``` ## Get BGP routing table stats `client.radar.bgp.routes.stats(RouteStatsParamsquery?, RequestOptionsoptions?): RouteStatsResponse` **get** `/radar/bgp/routes/stats` Retrieves the BGP routing table stats. ### Parameters - `query: RouteStatsParams` - `asn?: number` Filters results by Autonomous System. Specify a single Autonomous System Number (ASN) as integer. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: string` Filters results by location. Specify an alpha-2 location code. ### Returns - `RouteStatsResponse` - `meta: Meta` - `data_time: string` - `query_time: string` - `total_peers: number` - `stats: 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` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bgp.routes.stats(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "data_time": "data_time", "query_time": "query_time", "total_peers": 0 }, "stats": { "distinct_origins": 0, "distinct_origins_ipv4": 0, "distinct_origins_ipv6": 0, "distinct_prefixes": 0, "distinct_prefixes_ipv4": 0, "distinct_prefixes_ipv6": 0, "routes_invalid": 0, "routes_invalid_ipv4": 0, "routes_invalid_ipv6": 0, "routes_total": 0, "routes_total_ipv4": 0, "routes_total_ipv6": 0, "routes_unknown": 0, "routes_unknown_ipv4": 0, "routes_unknown_ipv6": 0, "routes_valid": 0, "routes_valid_ipv4": 0, "routes_valid_ipv6": 0 } }, "success": true } ``` ## List ASes from global routing tables `client.radar.bgp.routes.ases(RouteAsesParamsquery?, RequestOptionsoptions?): RouteAsesResponse` **get** `/radar/bgp/routes/ases` Retrieves all ASes in the current global routing tables with routing statistics. ### Parameters - `query: RouteAsesParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: string` Filters results by location. Specify an alpha-2 location code. - `sortBy?: "cone" | "pfxs" | "ipv4" | 4 more` Sorts results by the specified field. - `"cone"` - `"pfxs"` - `"ipv4"` - `"ipv6"` - `"rpki_valid"` - `"rpki_invalid"` - `"rpki_unknown"` - `sortOrder?: "ASC" | "DESC"` Sort order. - `"ASC"` - `"DESC"` ### Returns - `RouteAsesResponse` - `asns: Array` - `asn: number` - `coneSize: number` AS's customer cone size. - `country: string` Alpha-2 code for the AS's registration country. - `ipv4Count: number` Number of IPv4 addresses originated by the AS. - `ipv6Count: string` Number of IPv6 addresses originated by the AS. - `name: string` Name of the AS. - `pfxsCount: number` Number of total IP prefixes originated by the AS. - `rpkiInvalid: number` Number of RPKI invalid prefixes originated by the AS. - `rpkiUnknown: number` Number of RPKI unknown prefixes originated by the AS. - `rpkiValid: number` Number of RPKI valid prefixes originated by the AS. - `meta: Meta` - `dataTime: string` The timestamp of when the data is generated. - `queryTime: string` The timestamp of the query. - `totalPeers: number` Total number of route collector peers used to generate this data. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bgp.routes.ases(); console.log(response.asns); ``` #### Response ```json { "result": { "asns": [ { "asn": 0, "coneSize": 0, "country": "US", "ipv4Count": 0, "ipv6Count": "1.21e24", "name": "name", "pfxsCount": 0, "rpkiInvalid": 0, "rpkiUnknown": 0, "rpkiValid": 0 } ], "meta": { "dataTime": "2024-06-03T14:00:00", "queryTime": "2024-06-03T14:00:00", "totalPeers": 0 } }, "success": true } ``` ## Get real-time BGP routes for a prefix `client.radar.bgp.routes.realtime(RouteRealtimeParamsquery?, RequestOptionsoptions?): RouteRealtimeResponse` **get** `/radar/bgp/routes/realtime` Retrieves real-time BGP routes for a prefix, using public real-time data collectors (RouteViews and RIPE RIS). ### Parameters - `query: RouteRealtimeParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `prefix?: string` ### Returns - `RouteRealtimeResponse` - `meta: Meta` - `asn_info: Array` - `as_name: string` Name of the autonomous system. - `asn: number` AS number. - `country_code: string` Alpha-2 code for the AS's registration country. - `org_id: string` Organization ID. - `org_name: string` Organization name. - `collectors: Array` - `collector: string` Public route collector ID. - `latest_realtime_ts: string` Latest real-time stream timestamp for this collector. - `latest_rib_ts: string` Latest RIB dump MRT file timestamp for this collector. - `latest_updates_ts: string` Latest BGP updates MRT file timestamp for this collector. - `peers_count: number` Total number of collector peers used from this collector. - `peers_v4_count: number` Total number of collector peers used from this collector for IPv4 prefixes. - `peers_v6_count: number` Total number of collector peers used from this collector for IPv6 prefixes. - `data_time: string` The most recent data timestamp for from the real-time sources. - `prefix_origins: Array` - `origin: number` Origin ASN. - `prefix: string` IP prefix of this query. - `rpki_validation: string` Prefix-origin RPKI validation: valid, invalid, unknown. - `total_peers: number` Total number of peers. - `total_visible: number` Total number of peers seeing this prefix. - `visibility: number` Ratio of peers seeing this prefix to total number of peers. - `query_time: string` The timestamp of this query. - `routes: Array` - `as_path: Array` AS-level path for this route, from collector to origin. - `collector: string` Public collector ID for this route. - `communities: Array` BGP community values. - `prefix: string` IP prefix of this query. - `timestamp: string` Latest timestamp of change for this route. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bgp.routes.realtime(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "asn_info": [ { "as_name": "as_name", "asn": 0, "country_code": "country_code", "org_id": "org_id", "org_name": "org_name" } ], "collectors": [ { "collector": "collector", "latest_realtime_ts": "latest_realtime_ts", "latest_rib_ts": "latest_rib_ts", "latest_updates_ts": "latest_updates_ts", "peers_count": 0, "peers_v4_count": 0, "peers_v6_count": 0 } ], "data_time": "data_time", "prefix_origins": [ { "origin": 0, "prefix": "prefix", "rpki_validation": "rpki_validation", "total_peers": 0, "total_visible": 0, "visibility": 0 } ], "query_time": "query_time" }, "routes": [ { "as_path": [ 0 ], "collector": "collector", "communities": [ "string" ], "prefix": "prefix", "timestamp": "timestamp" } ] }, "success": true } ``` ## Domain Types ### Route Moas Response - `RouteMoasResponse` - `meta: Meta` - `data_time: string` - `query_time: string` - `total_peers: number` - `moas: Array` - `origins: Array` - `origin: number` - `peer_count: number` - `rpki_validation: string` - `prefix: string` ### Route Pfx2as Response - `RoutePfx2asResponse` - `meta: Meta` - `data_time: string` - `query_time: string` - `total_peers: number` - `prefix_origins: Array` - `origin: number` - `peer_count: number` - `prefix: string` - `rpki_validation: string` ### Route Stats Response - `RouteStatsResponse` - `meta: Meta` - `data_time: string` - `query_time: string` - `total_peers: number` - `stats: 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` ### Route Ases Response - `RouteAsesResponse` - `asns: Array` - `asn: number` - `coneSize: number` AS's customer cone size. - `country: string` Alpha-2 code for the AS's registration country. - `ipv4Count: number` Number of IPv4 addresses originated by the AS. - `ipv6Count: string` Number of IPv6 addresses originated by the AS. - `name: string` Name of the AS. - `pfxsCount: number` Number of total IP prefixes originated by the AS. - `rpkiInvalid: number` Number of RPKI invalid prefixes originated by the AS. - `rpkiUnknown: number` Number of RPKI unknown prefixes originated by the AS. - `rpkiValid: number` Number of RPKI valid prefixes originated by the AS. - `meta: Meta` - `dataTime: string` The timestamp of when the data is generated. - `queryTime: string` The timestamp of the query. - `totalPeers: number` Total number of route collector peers used to generate this data. ### Route Realtime Response - `RouteRealtimeResponse` - `meta: Meta` - `asn_info: Array` - `as_name: string` Name of the autonomous system. - `asn: number` AS number. - `country_code: string` Alpha-2 code for the AS's registration country. - `org_id: string` Organization ID. - `org_name: string` Organization name. - `collectors: Array` - `collector: string` Public route collector ID. - `latest_realtime_ts: string` Latest real-time stream timestamp for this collector. - `latest_rib_ts: string` Latest RIB dump MRT file timestamp for this collector. - `latest_updates_ts: string` Latest BGP updates MRT file timestamp for this collector. - `peers_count: number` Total number of collector peers used from this collector. - `peers_v4_count: number` Total number of collector peers used from this collector for IPv4 prefixes. - `peers_v6_count: number` Total number of collector peers used from this collector for IPv6 prefixes. - `data_time: string` The most recent data timestamp for from the real-time sources. - `prefix_origins: Array` - `origin: number` Origin ASN. - `prefix: string` IP prefix of this query. - `rpki_validation: string` Prefix-origin RPKI validation: valid, invalid, unknown. - `total_peers: number` Total number of peers. - `total_visible: number` Total number of peers seeing this prefix. - `visibility: number` Ratio of peers seeing this prefix to total number of peers. - `query_time: string` The timestamp of this query. - `routes: Array` - `as_path: Array` AS-level path for this route, from collector to origin. - `collector: string` Public collector ID for this route. - `communities: Array` BGP community values. - `prefix: string` IP prefix of this query. - `timestamp: string` Latest timestamp of change for this route. # IPs ## Get announced IP address space time series `client.radar.bgp.ips.timeseries(IPTimeseriesParamsquery?, RequestOptionsoptions?): IPTimeseriesResponse` **get** `/radar/bgp/ips/timeseries` Retrieves time series data for the announced IP space count, represented as the number of IPv4 /24s and IPv6 /48s, for a given ASN. ### Parameters - `query: IPTimeseriesParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `includeDelay?: boolean` Includes data delay meta information. - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 location codes. - `name?: Array` Array of names used to label the series in the response. ### Returns - `IPTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `delay?: Delay` - `asn_data: ASNData` - `delaySecs: number` - `delayStr: string` - `healthy: boolean` - `latest: Latest` - `entries_count: number` - `path: string` - `timestamp: number` - `country_data: CountryData` - `delaySecs: number` - `delayStr: string` - `healthy: boolean` - `latest: Latest` - `count: number` - `timestamp: number` - `healthy: boolean` - `nowTs: number` - `serie_0: Serie0` - `ipv4: Array` - `ipv6: Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bgp.ips.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ], "delay": { "asn_data": { "delaySecs": 0, "delayStr": "delayStr", "healthy": true, "latest": { "entries_count": 0, "path": "path", "timestamp": 0 } }, "country_data": { "delaySecs": 0, "delayStr": "delayStr", "healthy": true, "latest": { "count": 0, "timestamp": 0 } }, "healthy": true, "nowTs": 0 } }, "serie_0": { "ipv4": [ "10" ], "ipv6": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Domain Types ### IP Timeseries Response - `IPTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `delay?: Delay` - `asn_data: ASNData` - `delaySecs: number` - `delayStr: string` - `healthy: boolean` - `latest: Latest` - `entries_count: number` - `path: string` - `timestamp: number` - `country_data: CountryData` - `delaySecs: number` - `delayStr: string` - `healthy: boolean` - `latest: Latest` - `count: number` - `timestamp: number` - `healthy: boolean` - `nowTs: number` - `serie_0: Serie0` - `ipv4: Array` - `ipv6: Array` - `timestamps: Array` # RPKI # ASPA ## Get ASPA objects snapshot `client.radar.bgp.rpki.aspa.snapshot(ASPASnapshotParamsquery?, RequestOptionsoptions?): ASPASnapshotResponse` **get** `/radar/bgp/rpki/aspa/snapshot` Retrieves current or historical ASPA (Autonomous System Provider Authorization) objects. ASPA objects define which ASNs are authorized upstream providers for a customer ASN. ### Parameters - `query: ASPASnapshotParams` - `customerAsn?: number` Filter by customer ASN (the ASN publishing the ASPA object). - `date?: string` Filters results by the specified datetime (ISO 8601). - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `includeAsnInfo?: boolean` Include ASN metadata (name, country) in response. - `providerAsn?: number` Filter by provider ASN (an authorized upstream provider in ASPA objects). ### Returns - `ASPASnapshotResponse` - `asnInfo: ASNInfo` - `"13335": _13335` - `asn: number` ASN number. - `country: string` Alpha-2 country code. - `name: string` AS name. - `aspaObjects: Array` - `customerAsn: number` The customer ASN publishing the ASPA object. - `providers: Array` - `meta: Meta` - `dataTime: string` Timestamp of the underlying data. - `queryTime: string` Timestamp when the query was executed. - `totalCount: number` Total number of ASPA objects. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bgp.rpki.aspa.snapshot(); console.log(response.asnInfo); ``` #### Response ```json { "result": { "asnInfo": { "13335": { "asn": 0, "country": "country", "name": "name" } }, "aspaObjects": [ { "customerAsn": 0, "providers": [ 0 ] } ], "meta": { "dataTime": "2019-12-27T18:11:19.117Z", "queryTime": "2019-12-27T18:11:19.117Z", "totalCount": 0 } }, "success": true } ``` ## Get ASPA changes over time `client.radar.bgp.rpki.aspa.changes(ASPAChangesParamsquery?, RequestOptionsoptions?): ASPAChangesResponse` **get** `/radar/bgp/rpki/aspa/changes` Retrieves ASPA (Autonomous System Provider Authorization) changes over time. Returns daily aggregated changes including additions, removals, and modifications of ASPA objects. ### Parameters - `query: ASPAChangesParams` - `asn?: number` Filter changes involving this ASN (as customer or provider). - `dateEnd?: string` End of the date range (inclusive). - `dateStart?: string` Start of the date range (inclusive). - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `includeAsnInfo?: boolean` Include ASN metadata (name, country) in response. ### Returns - `ASPAChangesResponse` - `asnInfo: ASNInfo` - `"13335": _13335` - `asn: number` ASN number. - `country: string` Alpha-2 country code. - `name: string` AS name. - `changes: Array` - `customersAdded: number` Number of new ASPA objects created. - `customersRemoved: number` Number of ASPA objects deleted. - `date: string` Date of the changes in ISO 8601 format. - `entries: Array` - `customerAsn: number` The customer ASN affected. - `providers: Array` - `type: "CustomerAdded" | "CustomerRemoved" | "ProvidersAdded" | "ProvidersRemoved"` - `"CustomerAdded"` - `"CustomerRemoved"` - `"ProvidersAdded"` - `"ProvidersRemoved"` - `providersAdded: number` Number of providers added to existing objects. - `providersRemoved: number` Number of providers removed from existing objects. - `totalCount: number` Running total of active ASPA objects after this day. - `meta: Meta` - `dataTime: string` Timestamp of the underlying data. - `queryTime: string` Timestamp when the query was executed. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bgp.rpki.aspa.changes(); console.log(response.asnInfo); ``` #### Response ```json { "result": { "asnInfo": { "13335": { "asn": 0, "country": "country", "name": "name" } }, "changes": [ { "customersAdded": 0, "customersRemoved": 0, "date": "2019-12-27T18:11:19.117Z", "entries": [ { "customerAsn": 0, "providers": [ 0 ], "type": "CustomerAdded" } ], "providersAdded": 0, "providersRemoved": 0, "totalCount": 0 } ], "meta": { "dataTime": "2019-12-27T18:11:19.117Z", "queryTime": "2019-12-27T18:11:19.117Z" } }, "success": true } ``` ## Get ASPA count time series `client.radar.bgp.rpki.aspa.timeseries(ASPATimeseriesParamsquery?, RequestOptionsoptions?): ASPATimeseriesResponse` **get** `/radar/bgp/rpki/aspa/timeseries` Retrieves ASPA (Autonomous System Provider Authorization) object count over time. Supports filtering by RIR or location (country code) to generate multiple named series. If no RIR or location filter is specified, returns total count. ### Parameters - `query: ASPATimeseriesParams` - `dateEnd?: string` End of the date range (inclusive). - `dateStart?: string` Start of the date range (inclusive). - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 location codes. - `name?: Array` Array of names used to label the series in the response. - `rir?: Array<"RIPE_NCC" | "ARIN" | "APNIC" | 2 more>` Filter by Regional Internet Registry (RIR). Multiple RIRs generate multiple series. - `"RIPE_NCC"` - `"ARIN"` - `"APNIC"` - `"LACNIC"` - `"AFRINIC"` ### Returns - `ASPATimeseriesResponse` - `meta: Meta` - `dataTime: string` Timestamp of the underlying data. - `queryTime: string` Timestamp when the query was executed. - `serie_0: Serie0` - `timestamps: Array` - `values: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bgp.rpki.aspa.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "dataTime": "2019-12-27T18:11:19.117Z", "queryTime": "2019-12-27T18:11:19.117Z" }, "serie_0": { "timestamps": [ "2019-12-27T18:11:19.117Z" ], "values": [ "10" ] } }, "success": true } ``` ## Domain Types ### ASPA Snapshot Response - `ASPASnapshotResponse` - `asnInfo: ASNInfo` - `"13335": _13335` - `asn: number` ASN number. - `country: string` Alpha-2 country code. - `name: string` AS name. - `aspaObjects: Array` - `customerAsn: number` The customer ASN publishing the ASPA object. - `providers: Array` - `meta: Meta` - `dataTime: string` Timestamp of the underlying data. - `queryTime: string` Timestamp when the query was executed. - `totalCount: number` Total number of ASPA objects. ### ASPA Changes Response - `ASPAChangesResponse` - `asnInfo: ASNInfo` - `"13335": _13335` - `asn: number` ASN number. - `country: string` Alpha-2 country code. - `name: string` AS name. - `changes: Array` - `customersAdded: number` Number of new ASPA objects created. - `customersRemoved: number` Number of ASPA objects deleted. - `date: string` Date of the changes in ISO 8601 format. - `entries: Array` - `customerAsn: number` The customer ASN affected. - `providers: Array` - `type: "CustomerAdded" | "CustomerRemoved" | "ProvidersAdded" | "ProvidersRemoved"` - `"CustomerAdded"` - `"CustomerRemoved"` - `"ProvidersAdded"` - `"ProvidersRemoved"` - `providersAdded: number` Number of providers added to existing objects. - `providersRemoved: number` Number of providers removed from existing objects. - `totalCount: number` Running total of active ASPA objects after this day. - `meta: Meta` - `dataTime: string` Timestamp of the underlying data. - `queryTime: string` Timestamp when the query was executed. ### ASPA Timeseries Response - `ASPATimeseriesResponse` - `meta: Meta` - `dataTime: string` Timestamp of the underlying data. - `queryTime: string` Timestamp when the query was executed. - `serie_0: Serie0` - `timestamps: Array` - `values: Array` # Bots ## List bots `client.radar.bots.list(BotListParamsquery?, RequestOptionsoptions?): BotListResponse` **get** `/radar/bots` Retrieves a list of bots. ### Parameters - `query: BotListParams` - `botCategory?: "SEARCH_ENGINE_CRAWLER" | "SEARCH_ENGINE_OPTIMIZATION" | "MONITORING_AND_ANALYTICS" | 13 more` Filters results by bot category. - `"SEARCH_ENGINE_CRAWLER"` - `"SEARCH_ENGINE_OPTIMIZATION"` - `"MONITORING_AND_ANALYTICS"` - `"ADVERTISING_AND_MARKETING"` - `"SOCIAL_MEDIA_MARKETING"` - `"PAGE_PREVIEW"` - `"ACADEMIC_RESEARCH"` - `"SECURITY"` - `"ACCESSIBILITY"` - `"WEBHOOKS"` - `"FEED_FETCHER"` - `"AI_CRAWLER"` - `"AGGREGATOR"` - `"AI_ASSISTANT"` - `"AI_SEARCH"` - `"ARCHIVER"` - `botOperator?: string` Filters results by bot operator. - `botVerificationStatus?: "VERIFIED"` Filters results by bot verification status. - `"VERIFIED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `kind?: "AGENT" | "BOT"` Filters results by bot kind. - `"AGENT"` - `"BOT"` - `limit?: number` Limits the number of objects returned in the response. - `offset?: number` Skips the specified number of objects before fetching the results. ### Returns - `BotListResponse` - `bots: Array` - `category: string` The category of the bot. - `description: string` A summary for the bot (e.g., purpose). - `kind: string` The kind of the bot. - `name: string` The name of the bot. - `operator: string` The organization that owns and operates the bot. - `slug: string` A kebab-case identifier derived from the bot name. - `userAgentPatterns: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const bots = await client.radar.bots.list(); console.log(bots.bots); ``` #### Response ```json { "result": { "bots": [ { "category": "AI_CRAWLER", "description": "OpenAI/ChatGPT's web crawler", "kind": "AGENT", "name": "GPTBot", "operator": "OpenAI", "slug": "gptbot", "userAgentPatterns": [ "GPTBot" ] } ] }, "success": true } ``` ## Get bot details `client.radar.bots.get(stringbotSlug, BotGetParamsquery?, RequestOptionsoptions?): BotGetResponse` **get** `/radar/bots/{bot_slug}` Retrieves the requested bot information. ### Parameters - `botSlug: string` Bot slug. - `query: BotGetParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` ### Returns - `BotGetResponse` - `bot: Bot` - `category: string` The category of the bot. - `description: string` A summary for the bot (e.g., purpose). - `kind: string` The kind of the bot. - `name: string` The name of the bot. - `operator: string` The organization that owns and operates the bot. - `operatorUrl: string` The link to the bot documentation. - `slug: string` A kebab-case identifier derived from the bot name. - `userAgentPatterns: Array` - `userAgents: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const bot = await client.radar.bots.get('gptbot'); console.log(bot.bot); ``` #### Response ```json { "result": { "bot": { "category": "AI_CRAWLER", "description": "OpenAI/ChatGPT's web crawler", "kind": "AGENT", "name": "GPTBot", "operator": "OpenAI", "operatorUrl": "https://platform.openai.com/docs/bots", "slug": "gptbot", "userAgentPatterns": [ "GPTBot" ], "userAgents": [ "GPTBot" ] } }, "success": true } ``` ## Get bots HTTP requests distribution by dimension `client.radar.bots.summary("BOT" | "BOT_KIND" | "BOT_OPERATOR" | "BOT_CATEGORY"dimension, BotSummaryParamsquery?, RequestOptionsoptions?): BotSummaryResponse` **get** `/radar/bots/summary/{dimension}` Retrieves an aggregated summary of bots HTTP requests grouped by the specified dimension. ### Parameters - `dimension: "BOT" | "BOT_KIND" | "BOT_OPERATOR" | "BOT_CATEGORY"` Specifies the attribute by which to group the results. - `"BOT"` - `"BOT_KIND"` - `"BOT_OPERATOR"` - `"BOT_CATEGORY"` - `query: BotSummaryParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `bot?: Array` Filters results by bot name. - `botCategory?: Array<"SEARCH_ENGINE_CRAWLER" | "SEARCH_ENGINE_OPTIMIZATION" | "MONITORING_AND_ANALYTICS" | 13 more>` Filters results by bot category. - `"SEARCH_ENGINE_CRAWLER"` - `"SEARCH_ENGINE_OPTIMIZATION"` - `"MONITORING_AND_ANALYTICS"` - `"ADVERTISING_AND_MARKETING"` - `"SOCIAL_MEDIA_MARKETING"` - `"PAGE_PREVIEW"` - `"ACADEMIC_RESEARCH"` - `"SECURITY"` - `"ACCESSIBILITY"` - `"WEBHOOKS"` - `"FEED_FETCHER"` - `"AI_CRAWLER"` - `"AGGREGATOR"` - `"AI_ASSISTANT"` - `"AI_SEARCH"` - `"ARCHIVER"` - `botKind?: Array<"AGENT" | "BOT">` Filters results by bot kind. - `"AGENT"` - `"BOT"` - `botOperator?: Array` Filters results by bot operator. - `botVerificationStatus?: Array<"VERIFIED">` Filters results by bot verification status (Verified vs. Unverified). - `"VERIFIED"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `BotSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bots.summary('BOT'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "Facebook": "10.274394", "GPTBot": "63.40249", "GoogleBot": "8.381743" } }, "success": true } ``` ## Get bots HTTP requests time series `client.radar.bots.timeseries(BotTimeseriesParamsquery?, RequestOptionsoptions?): BotTimeseriesResponse` **get** `/radar/bots/timeseries` Retrieves bots HTTP request volume over time. ### Parameters - `query: BotTimeseriesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `bot?: Array` Filters results by bot name. - `botCategory?: Array<"SEARCH_ENGINE_CRAWLER" | "SEARCH_ENGINE_OPTIMIZATION" | "MONITORING_AND_ANALYTICS" | 13 more>` Filters results by bot category. - `"SEARCH_ENGINE_CRAWLER"` - `"SEARCH_ENGINE_OPTIMIZATION"` - `"MONITORING_AND_ANALYTICS"` - `"ADVERTISING_AND_MARKETING"` - `"SOCIAL_MEDIA_MARKETING"` - `"PAGE_PREVIEW"` - `"ACADEMIC_RESEARCH"` - `"SECURITY"` - `"ACCESSIBILITY"` - `"WEBHOOKS"` - `"FEED_FETCHER"` - `"AI_CRAWLER"` - `"AGGREGATOR"` - `"AI_ASSISTANT"` - `"AI_SEARCH"` - `"ARCHIVER"` - `botKind?: Array<"AGENT" | "BOT">` Filters results by bot kind. - `"AGENT"` - `"BOT"` - `botOperator?: Array` Filters results by bot operator. - `botVerificationStatus?: Array<"VERIFIED">` Filters results by bot verification status (Verified vs. Unverified). - `"VERIFIED"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `BotTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bots.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] } }, "success": true } ``` ## Get time series distribution of bots HTTP requests by dimension. `client.radar.bots.timeseriesGroups("BOT" | "BOT_KIND" | "BOT_OPERATOR" | "BOT_CATEGORY"dimension, BotTimeseriesGroupsParamsquery?, RequestOptionsoptions?): BotTimeseriesGroupsResponse` **get** `/radar/bots/timeseries_groups/{dimension}` Retrieves the distribution of HTTP requests from bots, grouped by the specified dimension over time. ### Parameters - `dimension: "BOT" | "BOT_KIND" | "BOT_OPERATOR" | "BOT_CATEGORY"` Specifies the attribute by which to group the results. - `"BOT"` - `"BOT_KIND"` - `"BOT_OPERATOR"` - `"BOT_CATEGORY"` - `query: BotTimeseriesGroupsParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `bot?: Array` Filters results by bot name. - `botCategory?: Array<"SEARCH_ENGINE_CRAWLER" | "SEARCH_ENGINE_OPTIMIZATION" | "MONITORING_AND_ANALYTICS" | 13 more>` Filters results by bot category. - `"SEARCH_ENGINE_CRAWLER"` - `"SEARCH_ENGINE_OPTIMIZATION"` - `"MONITORING_AND_ANALYTICS"` - `"ADVERTISING_AND_MARKETING"` - `"SOCIAL_MEDIA_MARKETING"` - `"PAGE_PREVIEW"` - `"ACADEMIC_RESEARCH"` - `"SECURITY"` - `"ACCESSIBILITY"` - `"WEBHOOKS"` - `"FEED_FETCHER"` - `"AI_CRAWLER"` - `"AGGREGATOR"` - `"AI_ASSISTANT"` - `"AI_SEARCH"` - `"ARCHIVER"` - `botKind?: Array<"AGENT" | "BOT">` Filters results by bot kind. - `"AGENT"` - `"BOT"` - `botOperator?: Array` Filters results by bot operator. - `botVerificationStatus?: Array<"VERIFIED">` Filters results by bot verification status (Verified vs. Unverified). - `"VERIFIED"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `BotTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bots.timeseriesGroups('BOT'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Bot List Response - `BotListResponse` - `bots: Array` - `category: string` The category of the bot. - `description: string` A summary for the bot (e.g., purpose). - `kind: string` The kind of the bot. - `name: string` The name of the bot. - `operator: string` The organization that owns and operates the bot. - `slug: string` A kebab-case identifier derived from the bot name. - `userAgentPatterns: Array` ### Bot Get Response - `BotGetResponse` - `bot: Bot` - `category: string` The category of the bot. - `description: string` A summary for the bot (e.g., purpose). - `kind: string` The kind of the bot. - `name: string` The name of the bot. - `operator: string` The organization that owns and operates the bot. - `operatorUrl: string` The link to the bot documentation. - `slug: string` A kebab-case identifier derived from the bot name. - `userAgentPatterns: Array` - `userAgents: Array` ### Bot Summary Response - `BotSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Bot Timeseries Response - `BotTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Bot Timeseries Groups Response - `BotTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Web Crawlers ## Get crawler HTTP request distribution by dimension `client.radar.bots.webCrawlers.summary("CLIENT_TYPE" | "USER_AGENT" | "REFERER" | 3 moredimension, WebCrawlerSummaryParamsquery?, RequestOptionsoptions?): WebCrawlerSummaryResponse` **get** `/radar/bots/crawlers/summary/{dimension}` Retrieves an aggregated summary of HTTP requests from crawlers, grouped by the specified dimension. ### Parameters - `dimension: "CLIENT_TYPE" | "USER_AGENT" | "REFERER" | 3 more` Specifies the attribute by which to group the results. - `"CLIENT_TYPE"` - `"USER_AGENT"` - `"REFERER"` - `"CRAWL_REFER_RATIO"` - `"VERTICAL"` - `"INDUSTRY"` - `query: WebCrawlerSummaryParams` - `botOperator?: Array` Filters results by bot operator. - `clientType?: Array<"HUMAN" | "NON_AI_BOT" | "AI_BOT" | "MIXED_PURPOSE">` Filters results by agent type. - `"HUMAN"` - `"NON_AI_BOT"` - `"AI_BOT"` - `"MIXED_PURPOSE"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `industry?: Array` Filters results by industry. - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `name?: Array` Array of names used to label the series in the response. - `vertical?: Array` Filters results by vertical. ### Returns - `WebCrawlerSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bots.webCrawlers.summary('CLIENT_TYPE'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "Claude": "63.40249", "DuckDuckGo": "10.274394", "Google": "8.381743" } }, "success": true } ``` ## Get time series of crawler HTTP request distribution by dimension `client.radar.bots.webCrawlers.timeseriesGroups("CLIENT_TYPE" | "USER_AGENT" | "REFERER" | 3 moredimension, WebCrawlerTimeseriesGroupsParamsquery?, RequestOptionsoptions?): WebCrawlerTimeseriesGroupsResponse` **get** `/radar/bots/crawlers/timeseries_groups/{dimension}` Retrieves the distribution of HTTP requests from crawlers, grouped by the specified dimension over time. ### Parameters - `dimension: "CLIENT_TYPE" | "USER_AGENT" | "REFERER" | 3 more` Specifies the attribute by which to group the results. - `"CLIENT_TYPE"` - `"USER_AGENT"` - `"REFERER"` - `"CRAWL_REFER_RATIO"` - `"VERTICAL"` - `"INDUSTRY"` - `query: WebCrawlerTimeseriesGroupsParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `botOperator?: Array` Filters results by bot operator. - `clientType?: Array<"HUMAN" | "NON_AI_BOT" | "AI_BOT" | "MIXED_PURPOSE">` Filters results by agent type. - `"HUMAN"` - `"NON_AI_BOT"` - `"AI_BOT"` - `"MIXED_PURPOSE"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `industry?: Array` Filters results by industry. - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `name?: Array` Array of names used to label the series in the response. - `vertical?: Array` Filters results by vertical. ### Returns - `WebCrawlerTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.bots.webCrawlers.timeseriesGroups('CLIENT_TYPE'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Web Crawler Summary Response - `WebCrawlerSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Web Crawler Timeseries Groups Response - `WebCrawlerTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Datasets ## List datasets `client.radar.datasets.list(DatasetListParamsquery?, RequestOptionsoptions?): DatasetListResponse` **get** `/radar/datasets` Retrieves a list of datasets. ### Parameters - `query: DatasetListParams` - `datasetType?: "RANKING_BUCKET" | "REPORT"` Filters results by dataset type. - `"RANKING_BUCKET"` - `"REPORT"` - `date?: string` Filters results by the specified date. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `offset?: number` Skips the specified number of objects before fetching the results. ### Returns - `DatasetListResponse` - `datasets: Array` - `id: number` - `description: string` - `meta: unknown` - `tags: Array` - `title: string` - `type: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const datasets = await client.radar.datasets.list(); console.log(datasets.datasets); ``` #### Response ```json { "result": { "datasets": [ { "id": 3, "description": "This dataset contains a list of the op 20000 domains globally", "meta": {}, "tags": [ "global" ], "title": "Top bucket 20000 domains", "type": "RANKING_BUCKET" } ] }, "success": true } ``` ## Get dataset CSV stream `client.radar.datasets.get(stringalias, RequestOptionsoptions?): DatasetGetResponse` **get** `/radar/datasets/{alias}` Retrieves the CSV content of a given dataset by alias or ID. When getting the content by alias the latest dataset is returned, optionally filtered by the latest available at a given date. ### Parameters - `alias: string` Dataset alias or ID. ### Returns - `DatasetGetResponse = string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const dataset = await client.radar.datasets.get('ranking_top_1000'); console.log(dataset); ``` ## Get dataset download URL `client.radar.datasets.download(DatasetDownloadParamsparams, RequestOptionsoptions?): DatasetDownloadResponse` **post** `/radar/datasets/download` Retrieves an URL to download a single dataset. ### Parameters - `params: DatasetDownloadParams` - `datasetId: number` Body param - `format?: "JSON" | "CSV"` Query param: Format in which results will be returned. - `"JSON"` - `"CSV"` ### Returns - `DatasetDownloadResponse` - `dataset: Dataset` - `url: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.datasets.download({ datasetId: 3 }); console.log(response.dataset); ``` #### Response ```json { "result": { "dataset": { "url": "https://example.com/download" } } } ``` ## Domain Types ### Dataset List Response - `DatasetListResponse` - `datasets: Array` - `id: number` - `description: string` - `meta: unknown` - `tags: Array` - `title: string` - `type: string` ### Dataset Get Response - `DatasetGetResponse = string` ### Dataset Download Response - `DatasetDownloadResponse` - `dataset: Dataset` - `url: string` # DNS ## Get DNS summary by dimension `client.radar.dns.summaryV2("AS" | "CACHE_HIT" | "DNSSEC" | 11 moredimension, DNSSummaryV2Paramsquery?, RequestOptionsoptions?): DNSSummaryV2Response` **get** `/radar/dns/summary/{dimension}` Retrieves the distribution of DNS queries by the specified dimension. ### Parameters - `dimension: "AS" | "CACHE_HIT" | "DNSSEC" | 11 more` Specifies the attribute by which to group the results. - `"AS"` - `"CACHE_HIT"` - `"DNSSEC"` - `"DNSSEC_AWARE"` - `"DNSSEC_E2E"` - `"IP_VERSION"` - `"LOCATION"` - `"MATCHING_ANSWER"` - `"PROTOCOL"` - `"QUERY_TYPE"` - `"RESPONSE_CODE"` - `"RESPONSE_TTL"` - `"TLD"` - `"TLD_DNS_MAGNITUDE"` - `query: DNSSummaryV2Params` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `cacheHit?: Array` Filters results based on cache status. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dnssec?: Array<"INVALID" | "INSECURE" | "SECURE" | "OTHER">` Filters results based on DNSSEC (DNS Security Extensions) support. - `"INVALID"` - `"INSECURE"` - `"SECURE"` - `"OTHER"` - `dnssecAware?: Array<"SUPPORTED" | "NOT_SUPPORTED">` Filters results based on DNSSEC (DNS Security Extensions) client awareness. - `"SUPPORTED"` - `"NOT_SUPPORTED"` - `dnssecE2e?: Array` Filters results based on DNSSEC-validated answers by end-to-end security status. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `matchingAnswer?: Array` Filters results based on whether the queries have a matching answer. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `responseTtl?: Array<"LTE_1M" | "GT_1M_LTE_5M" | "GT_5M_LTE_15M" | 4 more>` Filters results by DNS response TTL. - `"LTE_1M"` - `"GT_1M_LTE_5M"` - `"GT_5M_LTE_15M"` - `"GT_15M_LTE_1H"` - `"GT_1H_LTE_1D"` - `"GT_1D_LTE_1W"` - `"GT_1W"` - `tld?: Array` Filters results by top-level domain. ### Returns - `DNSSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.summaryV2('AS'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "IPv4": "50.168733", "IPv6": "25.084366" } }, "success": true } ``` ## Get DNS queries time series `client.radar.dns.timeseries(DNSTimeseriesParamsquery?, RequestOptionsoptions?): DNSTimeseriesResponse` **get** `/radar/dns/timeseries` Retrieves normalized query volume to the 1.1.1.1 DNS resolver over time. ### Parameters - `query: DNSTimeseriesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `cacheHit?: Array` Filters results based on cache status. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dnssec?: Array<"INVALID" | "INSECURE" | "SECURE" | "OTHER">` Filters results based on DNSSEC (DNS Security Extensions) support. - `"INVALID"` - `"INSECURE"` - `"SECURE"` - `"OTHER"` - `dnssecAware?: Array<"SUPPORTED" | "NOT_SUPPORTED">` Filters results based on DNSSEC (DNS Security Extensions) client awareness. - `"SUPPORTED"` - `"NOT_SUPPORTED"` - `dnssecE2e?: Array` Filters results based on DNSSEC-validated answers by end-to-end security status. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `matchingAnswer?: Array` Filters results based on whether the queries have a matching answer. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `responseTtl?: Array<"LTE_1M" | "GT_1M_LTE_5M" | "GT_5M_LTE_15M" | 4 more>` Filters results by DNS response TTL. - `"LTE_1M"` - `"GT_1M_LTE_5M"` - `"GT_5M_LTE_15M"` - `"GT_15M_LTE_1H"` - `"GT_1H_LTE_1D"` - `"GT_1D_LTE_1W"` - `"GT_1W"` - `tld?: Array` Filters results by top-level domain. ### Returns - `DNSTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] } }, "success": true } ``` ## Get DNS time series grouped by dimension `client.radar.dns.timeseriesGroupsV2("AS" | "CACHE_HIT" | "DNSSEC" | 10 moredimension, DNSTimeseriesGroupsV2Paramsquery?, RequestOptionsoptions?): DNSTimeseriesGroupsV2Response` **get** `/radar/dns/timeseries_groups/{dimension}` Retrieves the distribution of DNS queries grouped by dimension over time. ### Parameters - `dimension: "AS" | "CACHE_HIT" | "DNSSEC" | 10 more` Specifies the attribute by which to group the results. - `"AS"` - `"CACHE_HIT"` - `"DNSSEC"` - `"DNSSEC_AWARE"` - `"DNSSEC_E2E"` - `"IP_VERSION"` - `"LOCATION"` - `"MATCHING_ANSWER"` - `"PROTOCOL"` - `"QUERY_TYPE"` - `"RESPONSE_CODE"` - `"RESPONSE_TTL"` - `"TLD"` - `query: DNSTimeseriesGroupsV2Params` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `cacheHit?: Array` Filters results based on cache status. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dnssec?: Array<"INVALID" | "INSECURE" | "SECURE" | "OTHER">` Filters results based on DNSSEC (DNS Security Extensions) support. - `"INVALID"` - `"INSECURE"` - `"SECURE"` - `"OTHER"` - `dnssecAware?: Array<"SUPPORTED" | "NOT_SUPPORTED">` Filters results based on DNSSEC (DNS Security Extensions) client awareness. - `"SUPPORTED"` - `"NOT_SUPPORTED"` - `dnssecE2e?: Array` Filters results based on DNSSEC-validated answers by end-to-end security status. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `matchingAnswer?: Array` Filters results based on whether the queries have a matching answer. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `responseTtl?: Array<"LTE_1M" | "GT_1M_LTE_5M" | "GT_5M_LTE_15M" | 4 more>` Filters results by DNS response TTL. - `"LTE_1M"` - `"GT_1M_LTE_5M"` - `"GT_5M_LTE_15M"` - `"GT_15M_LTE_1H"` - `"GT_1H_LTE_1D"` - `"GT_1D_LTE_1W"` - `"GT_1W"` - `tld?: Array` Filters results by top-level domain. ### Returns - `DNSTimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.timeseriesGroupsV2('AS'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### DNS Summary V2 Response - `DNSSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### DNS Timeseries Response - `DNSTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### DNS Timeseries Groups V2 Response - `DNSTimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Top ## Get top ASes by DNS queries `client.radar.dns.top.ases(TopAsesParamsquery?, RequestOptionsoptions?): TopAsesResponse` **get** `/radar/dns/top/ases` Retrieves the top autonomous systems by DNS queries made to 1.1.1.1 DNS resolver. ### Parameters - `query: TopAsesParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `cacheHit?: Array` Filters results based on cache status. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dnssec?: Array<"INVALID" | "INSECURE" | "SECURE" | "OTHER">` Filters results based on DNSSEC (DNS Security Extensions) support. - `"INVALID"` - `"INSECURE"` - `"SECURE"` - `"OTHER"` - `dnssecAware?: Array<"SUPPORTED" | "NOT_SUPPORTED">` Filters results based on DNSSEC (DNS Security Extensions) client awareness. - `"SUPPORTED"` - `"NOT_SUPPORTED"` - `dnssecE2e?: Array` Filters results based on DNSSEC-validated answers by end-to-end security status. - `domain?: Array` Filters results by domain name. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `matchingAnswer?: Array` Filters results based on whether the queries have a matching answer. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `responseTtl?: Array<"LTE_1M" | "GT_1M_LTE_5M" | "GT_5M_LTE_15M" | 4 more>` Filters results by DNS response TTL. - `"LTE_1M"` - `"GT_1M_LTE_5M"` - `"GT_5M_LTE_15M"` - `"GT_15M_LTE_1H"` - `"GT_1H_LTE_1D"` - `"GT_1D_LTE_1W"` - `"GT_1W"` ### Returns - `TopAsesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.top.ases(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` ## Get top locations by DNS queries `client.radar.dns.top.locations(TopLocationsParamsquery?, RequestOptionsoptions?): TopLocationsResponse` **get** `/radar/dns/top/locations` Retrieves the top locations by DNS queries made to 1.1.1.1 DNS resolver. ### Parameters - `query: TopLocationsParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `cacheHit?: Array` Filters results based on cache status. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dnssec?: Array<"INVALID" | "INSECURE" | "SECURE" | "OTHER">` Filters results based on DNSSEC (DNS Security Extensions) support. - `"INVALID"` - `"INSECURE"` - `"SECURE"` - `"OTHER"` - `dnssecAware?: Array<"SUPPORTED" | "NOT_SUPPORTED">` Filters results based on DNSSEC (DNS Security Extensions) client awareness. - `"SUPPORTED"` - `"NOT_SUPPORTED"` - `dnssecE2e?: Array` Filters results based on DNSSEC-validated answers by end-to-end security status. - `domain?: Array` Filters results by domain name. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `matchingAnswer?: Array` Filters results based on whether the queries have a matching answer. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `responseTtl?: Array<"LTE_1M" | "GT_1M_LTE_5M" | "GT_5M_LTE_15M" | 4 more>` Filters results by DNS response TTL. - `"LTE_1M"` - `"GT_1M_LTE_5M"` - `"GT_5M_LTE_15M"` - `"GT_15M_LTE_1H"` - `"GT_1H_LTE_1D"` - `"GT_1D_LTE_1W"` - `"GT_1W"` - `tld?: Array` Filters results by top-level domain. ### Returns - `TopLocationsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.top.locations(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Top Ases Response - `TopAsesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Top Locations Response - `TopLocationsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # Summary ## Get DNS queries by cache status summary `client.radar.dns.summary.cacheHit(SummaryCacheHitParamsquery?, RequestOptionsoptions?): SummaryCacheHitResponse` **get** `/radar/dns/summary/cache_hit` Retrieves the distribution of DNS queries by cache status. ### Parameters - `query: SummaryCacheHitParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `SummaryCacheHitResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NEGATIVE: string` A numeric string. - `POSITIVE: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.summary.cacheHit(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "NEGATIVE": "10", "POSITIVE": "10" } }, "success": true } ``` ## Get DNS queries by DNSSEC support summary `client.radar.dns.summary.dnssec(SummaryDNSSECParamsquery?, RequestOptionsoptions?): SummaryDNSSECResponse` **get** `/radar/dns/summary/dnssec` Retrieves the distribution of DNS responses by DNSSEC (DNS Security Extensions) support. ### Parameters - `query: SummaryDNSSECParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `SummaryDNSSECResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `INSECURE: string` A numeric string. - `INVALID: string` A numeric string. - `OTHER: string` A numeric string. - `SECURE: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.summary.dnssec(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "INSECURE": "10", "INVALID": "10", "OTHER": "10", "SECURE": "10" } }, "success": true } ``` ## Get DNS queries by DNSSEC awareness summary `client.radar.dns.summary.dnssecAware(SummaryDNSSECAwareParamsquery?, RequestOptionsoptions?): SummaryDNSSECAwareResponse` **get** `/radar/dns/summary/dnssec_aware` Retrieves the distribution of DNS queries by DNSSEC (DNS Security Extensions) client awareness. ### Parameters - `query: SummaryDNSSECAwareParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `SummaryDNSSECAwareResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NOT_SUPPORTED: string` A numeric string. - `SUPPORTED: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.summary.dnssecAware(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "NOT_SUPPORTED": "10", "SUPPORTED": "10" } }, "success": true } ``` ## Get DNS queries by DNSSEC end-to-end summary `client.radar.dns.summary.dnssecE2E(SummaryDNSSECE2EParamsquery?, RequestOptionsoptions?): SummaryDNSSECE2EResponse` **get** `/radar/dns/summary/dnssec_e2e` Retrieves the distribution of DNSSEC-validated answers by end-to-end security status. ### Parameters - `query: SummaryDNSSECE2EParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `SummaryDNSSECE2EResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NEGATIVE: string` A numeric string. - `POSITIVE: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.summary.dnssecE2E(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "NEGATIVE": "10", "POSITIVE": "10" } }, "success": true } ``` ## Get DNS queries by IP version summary `client.radar.dns.summary.ipVersion(SummaryIPVersionParamsquery?, RequestOptionsoptions?): SummaryIPVersionResponse` **get** `/radar/dns/summary/ip_version` Retrieves the distribution of DNS queries by IP version. ### Parameters - `query: SummaryIPVersionParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `SummaryIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `IPv4: string` A numeric string. - `IPv6: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.summary.ipVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "IPv4": "10", "IPv6": "10" } }, "success": true } ``` ## Get DNS queries by matching answer summary `client.radar.dns.summary.matchingAnswer(SummaryMatchingAnswerParamsquery?, RequestOptionsoptions?): SummaryMatchingAnswerResponse` **get** `/radar/dns/summary/matching_answer` Retrieves the distribution of DNS queries by matching answers. ### Parameters - `query: SummaryMatchingAnswerParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `SummaryMatchingAnswerResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NEGATIVE: string` A numeric string. - `POSITIVE: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.summary.matchingAnswer(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "NEGATIVE": "10", "POSITIVE": "10" } }, "success": true } ``` ## Get DNS queries by protocol summary `client.radar.dns.summary.protocol(SummaryProtocolParamsquery?, RequestOptionsoptions?): SummaryProtocolResponse` **get** `/radar/dns/summary/protocol` Retrieves the distribution of DNS queries by DNS transport protocol. ### Parameters - `query: SummaryProtocolParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `SummaryProtocolResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `HTTPS: string` A numeric string. - `TCP: string` A numeric string. - `TLS: string` A numeric string. - `UDP: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.summary.protocol(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "HTTPS": "10", "TCP": "10", "TLS": "10", "UDP": "10" } }, "success": true } ``` ## Get DNS queries by type summary `client.radar.dns.summary.queryType(SummaryQueryTypeParamsquery?, RequestOptionsoptions?): SummaryQueryTypeResponse` **get** `/radar/dns/summary/query_type` Retrieves the distribution of DNS queries by type. ### Parameters - `query: SummaryQueryTypeParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `SummaryQueryTypeResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.summary.queryType(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "A": "20", "AAAA": "20", "HTTPS": "20", "NS": "20", "PTR": "20" } }, "success": true } ``` ## Get DNS queries by response code summary `client.radar.dns.summary.responseCode(SummaryResponseCodeParamsquery?, RequestOptionsoptions?): SummaryResponseCodeResponse` **get** `/radar/dns/summary/response_code` Retrieves the distribution of DNS queries by response code. ### Parameters - `query: SummaryResponseCodeParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `tld?: Array` Filters results by top-level domain. ### Returns - `SummaryResponseCodeResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.summary.responseCode(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "NOERROR": "70", "NOTIMP": "5", "NXDOMAIN": "10", "REFUSED": "5", "SERVFAIL": "5" } }, "success": true } ``` ## Get DNS queries by response TTL summary `client.radar.dns.summary.responseTTL(SummaryResponseTTLParamsquery?, RequestOptionsoptions?): SummaryResponseTTLResponse` **get** `/radar/dns/summary/response_ttl` Retrieves the distribution of DNS queries by minimum response TTL. ### Parameters - `query: SummaryResponseTTLParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `SummaryResponseTTLResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `gt_15m_lte_1h: string` A numeric string. - `gt_1d_lte_1w: string` A numeric string. - `gt_1h_lte_1d: string` A numeric string. - `gt_1m_lte_5m: string` A numeric string. - `gt_1w: string` A numeric string. - `gt_5m_lte_15m: string` A numeric string. - `lte_1m: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.summary.responseTTL(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "gt_15m_lte_1h": "10", "gt_1d_lte_1w": "10", "gt_1h_lte_1d": "10", "gt_1m_lte_5m": "10", "gt_1w": "10", "gt_5m_lte_15m": "10", "lte_1m": "10" } }, "success": true } ``` ## Domain Types ### Summary Cache Hit Response - `SummaryCacheHitResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NEGATIVE: string` A numeric string. - `POSITIVE: string` A numeric string. ### Summary DNSSEC Response - `SummaryDNSSECResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `INSECURE: string` A numeric string. - `INVALID: string` A numeric string. - `OTHER: string` A numeric string. - `SECURE: string` A numeric string. ### Summary DNSSEC Aware Response - `SummaryDNSSECAwareResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NOT_SUPPORTED: string` A numeric string. - `SUPPORTED: string` A numeric string. ### Summary DNSSEC E2E Response - `SummaryDNSSECE2EResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NEGATIVE: string` A numeric string. - `POSITIVE: string` A numeric string. ### Summary IP Version Response - `SummaryIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `IPv4: string` A numeric string. - `IPv6: string` A numeric string. ### Summary Matching Answer Response - `SummaryMatchingAnswerResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NEGATIVE: string` A numeric string. - `POSITIVE: string` A numeric string. ### Summary Protocol Response - `SummaryProtocolResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `HTTPS: string` A numeric string. - `TCP: string` A numeric string. - `TLS: string` A numeric string. - `UDP: string` A numeric string. ### Summary Query Type Response - `SummaryQueryTypeResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Summary Response Code Response - `SummaryResponseCodeResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Summary Response TTL Response - `SummaryResponseTTLResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `gt_15m_lte_1h: string` A numeric string. - `gt_1d_lte_1w: string` A numeric string. - `gt_1h_lte_1d: string` A numeric string. - `gt_1m_lte_5m: string` A numeric string. - `gt_1w: string` A numeric string. - `gt_5m_lte_15m: string` A numeric string. - `lte_1m: string` A numeric string. # Timeseries Groups ## Get DNS queries by cache status time series `client.radar.dns.timeseriesGroups.cacheHit(TimeseriesGroupCacheHitParamsquery?, RequestOptionsoptions?): TimeseriesGroupCacheHitResponse` **get** `/radar/dns/timeseries_groups/cache_hit` Retrieves the distribution of DNS queries by cache status over time. ### Parameters - `query: TimeseriesGroupCacheHitParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `TimeseriesGroupCacheHitResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NEGATIVE: Array` - `POSITIVE: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.timeseriesGroups.cacheHit(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "NEGATIVE": [ "10" ], "POSITIVE": [ "10" ] } }, "success": true } ``` ## Get DNS queries by DNSSEC support time series `client.radar.dns.timeseriesGroups.dnssec(TimeseriesGroupDNSSECParamsquery?, RequestOptionsoptions?): TimeseriesGroupDNSSECResponse` **get** `/radar/dns/timeseries_groups/dnssec` Retrieves the distribution of DNS responses by DNSSEC (DNS Security Extensions) support over time. ### Parameters - `query: TimeseriesGroupDNSSECParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `TimeseriesGroupDNSSECResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `INSECURE: Array` - `INVALID: Array` - `OTHER: Array` - `SECURE: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.timeseriesGroups.dnssec(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "INSECURE": [ "10" ], "INVALID": [ "10" ], "OTHER": [ "10" ], "SECURE": [ "10" ] } }, "success": true } ``` ## Get DNS queries by DNSSEC awareness time series `client.radar.dns.timeseriesGroups.dnssecAware(TimeseriesGroupDNSSECAwareParamsquery?, RequestOptionsoptions?): TimeseriesGroupDNSSECAwareResponse` **get** `/radar/dns/timeseries_groups/dnssec_aware` Retrieves the distribution of DNS queries by DNSSEC (DNS Security Extensions) client awareness over time. ### Parameters - `query: TimeseriesGroupDNSSECAwareParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `TimeseriesGroupDNSSECAwareResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NOT_SUPPORTED: Array` - `SUPPORTED: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.timeseriesGroups.dnssecAware(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "NOT_SUPPORTED": [ "10" ], "SUPPORTED": [ "10" ] } }, "success": true } ``` ## Get DNS queries by DNSSEC end-to-end time series `client.radar.dns.timeseriesGroups.dnssecE2E(TimeseriesGroupDNSSECE2EParamsquery?, RequestOptionsoptions?): TimeseriesGroupDNSSECE2EResponse` **get** `/radar/dns/timeseries_groups/dnssec_e2e` Retrieves the distribution of DNSSEC-validated answers by end-to-end security status over time. ### Parameters - `query: TimeseriesGroupDNSSECE2EParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `TimeseriesGroupDNSSECE2EResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NEGATIVE: Array` - `POSITIVE: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.timeseriesGroups.dnssecE2E(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "NEGATIVE": [ "10" ], "POSITIVE": [ "10" ] } }, "success": true } ``` ## Get DNS queries by IP version time series `client.radar.dns.timeseriesGroups.ipVersion(TimeseriesGroupIPVersionParamsquery?, RequestOptionsoptions?): TimeseriesGroupIPVersionResponse` **get** `/radar/dns/timeseries_groups/ip_version` Retrieves the distribution of DNS queries by IP version over time. ### Parameters - `query: TimeseriesGroupIPVersionParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `TimeseriesGroupIPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `IPv4: Array` - `IPv6: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.timeseriesGroups.ipVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "IPv4": [ "10" ], "IPv6": [ "10" ] } }, "success": true } ``` ## Get DNS queries by matching answer time series `client.radar.dns.timeseriesGroups.matchingAnswer(TimeseriesGroupMatchingAnswerParamsquery?, RequestOptionsoptions?): TimeseriesGroupMatchingAnswerResponse` **get** `/radar/dns/timeseries_groups/matching_answer` Retrieves the distribution of DNS queries by matching answers over time. ### Parameters - `query: TimeseriesGroupMatchingAnswerParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `TimeseriesGroupMatchingAnswerResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NEGATIVE: Array` - `POSITIVE: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.timeseriesGroups.matchingAnswer(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "NEGATIVE": [ "10" ], "POSITIVE": [ "10" ] } }, "success": true } ``` ## Get DNS queries by protocol time series `client.radar.dns.timeseriesGroups.protocol(TimeseriesGroupProtocolParamsquery?, RequestOptionsoptions?): TimeseriesGroupProtocolResponse` **get** `/radar/dns/timeseries_groups/protocol` Retrieves the distribution of DNS queries by DNS transport protocol over time. ### Parameters - `query: TimeseriesGroupProtocolParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `TimeseriesGroupProtocolResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `HTTPS: Array` - `TCP: Array` - `TLS: Array` - `UDP: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.timeseriesGroups.protocol(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "HTTPS": [ "10" ], "TCP": [ "10" ], "TLS": [ "10" ], "UDP": [ "10" ] } }, "success": true } ``` ## Get DNS queries by type time series `client.radar.dns.timeseriesGroups.queryType(TimeseriesGroupQueryTypeParamsquery?, RequestOptionsoptions?): TimeseriesGroupQueryTypeResponse` **get** `/radar/dns/timeseries_groups/query_type` Retrieves the distribution of DNS queries by type over time. ### Parameters - `query: TimeseriesGroupQueryTypeParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `TimeseriesGroupQueryTypeResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.timeseriesGroups.queryType(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get DNS queries by response code time series `client.radar.dns.timeseriesGroups.responseCode(TimeseriesGroupResponseCodeParamsquery?, RequestOptionsoptions?): TimeseriesGroupResponseCodeResponse` **get** `/radar/dns/timeseries_groups/response_code` Retrieves the distribution of DNS queries by response code over time. ### Parameters - `query: TimeseriesGroupResponseCodeParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `tld?: Array` Filters results by top-level domain. ### Returns - `TimeseriesGroupResponseCodeResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.timeseriesGroups.responseCode(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get DNS queries by response TTL time series `client.radar.dns.timeseriesGroups.responseTTL(TimeseriesGroupResponseTTLParamsquery?, RequestOptionsoptions?): TimeseriesGroupResponseTTLResponse` **get** `/radar/dns/timeseries_groups/response_ttl` Retrieves the distribution of DNS queries by minimum answer TTL over time. ### Parameters - `query: TimeseriesGroupResponseTTLParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `nodata?: Array` Specifies whether the response includes empty DNS responses (NODATA). - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` - `tld?: Array` Filters results by top-level domain. ### Returns - `TimeseriesGroupResponseTTLResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `gt_15m_lte_1h: Array` - `gt_1d_lte_1w: Array` - `gt_1h_lte_1d: Array` - `gt_1m_lte_5m: Array` - `gt_1w: Array` - `gt_5m_lte_15m: Array` - `lte_1m: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.dns.timeseriesGroups.responseTTL(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "gt_15m_lte_1h": [ "10" ], "gt_1d_lte_1w": [ "10" ], "gt_1h_lte_1d": [ "10" ], "gt_1m_lte_5m": [ "10" ], "gt_1w": [ "10" ], "gt_5m_lte_15m": [ "10" ], "lte_1m": [ "10" ] } }, "success": true } ``` ## Domain Types ### Timeseries Group Cache Hit Response - `TimeseriesGroupCacheHitResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NEGATIVE: Array` - `POSITIVE: Array` ### Timeseries Group DNSSEC Response - `TimeseriesGroupDNSSECResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `INSECURE: Array` - `INVALID: Array` - `OTHER: Array` - `SECURE: Array` ### Timeseries Group DNSSEC Aware Response - `TimeseriesGroupDNSSECAwareResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NOT_SUPPORTED: Array` - `SUPPORTED: Array` ### Timeseries Group DNSSEC E2E Response - `TimeseriesGroupDNSSECE2EResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NEGATIVE: Array` - `POSITIVE: Array` ### Timeseries Group IP Version Response - `TimeseriesGroupIPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `IPv4: Array` - `IPv6: Array` ### Timeseries Group Matching Answer Response - `TimeseriesGroupMatchingAnswerResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NEGATIVE: Array` - `POSITIVE: Array` ### Timeseries Group Protocol Response - `TimeseriesGroupProtocolResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `HTTPS: Array` - `TCP: Array` - `TLS: Array` - `UDP: Array` ### Timeseries Group Query Type Response - `TimeseriesGroupQueryTypeResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group Response Code Response - `TimeseriesGroupResponseCodeResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group Response TTL Response - `TimeseriesGroupResponseTTLResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `gt_15m_lte_1h: Array` - `gt_1d_lte_1w: Array` - `gt_1h_lte_1d: Array` - `gt_1m_lte_5m: Array` - `gt_1w: Array` - `gt_5m_lte_15m: Array` - `lte_1m: Array` # NetFlows ## Get network traffic time series `client.radar.netFlows.timeseries(NetFlowsTimeseriesParamsquery?, RequestOptionsoptions?): NetFlowsTimeseriesResponse` **get** `/radar/netflows/timeseries` Retrieves network traffic (NetFlows) over time. ### Parameters - `query: NetFlowsTimeseriesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE_CHANGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE_CHANGE"` - `"MIN0_MAX"` - `product?: Array<"HTTP" | "ALL">` Filters the results by network traffic product types. - `"HTTP"` - `"ALL"` ### Returns - `NetFlowsTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` - `values: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.netFlows.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2019-12-27T18:11:19.117Z" ], "values": [ "10" ] } }, "success": true } ``` ## Get network traffic summary `client.radar.netFlows.summary(NetFlowsSummaryParamsquery?, RequestOptionsoptions?): NetFlowsSummaryResponse` **get** `/radar/netflows/summary` Retrieves the distribution of network traffic (NetFlows) by HTTP vs other protocols. ### Parameters - `query: NetFlowsSummaryParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `NetFlowsSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `HTTP: string` A numeric string. - `OTHER: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.netFlows.summary(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "HTTP": "10", "OTHER": "10" } }, "success": true } ``` ## Get network traffic distribution by dimension `client.radar.netFlows.summaryV2("ADM1" | "AS" | "LOCATION" | "PRODUCT"dimension, NetFlowsSummaryV2Paramsquery?, RequestOptionsoptions?): NetFlowsSummaryV2Response` **get** `/radar/netflows/summary/{dimension}` Retrieves the distribution of network traffic (NetFlows) by the specified dimension. ### Parameters - `dimension: "ADM1" | "AS" | "LOCATION" | "PRODUCT"` Specifies the NetFlows attribute by which to group the results. - `"ADM1"` - `"AS"` - `"LOCATION"` - `"PRODUCT"` - `query: NetFlowsSummaryV2Params` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `product?: Array<"HTTP" | "ALL">` Filters the results by network traffic product types. - `"HTTP"` - `"ALL"` ### Returns - `NetFlowsSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.netFlows.summaryV2('ADM1'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "Germany": "25.084366", "United States": "50.168733" } }, "success": true } ``` ## Get time series distribution of network traffic by dimension `client.radar.netFlows.timeseriesGroups("ADM1" | "AS" | "LOCATION" | "PRODUCT"dimension, NetFlowsTimeseriesGroupsParamsquery?, RequestOptionsoptions?): NetFlowsTimeseriesGroupsResponse` **get** `/radar/netflows/timeseries_groups/{dimension}` Retrieves the distribution of NetFlows traffic, grouped by the specified dimension over time. ### Parameters - `dimension: "ADM1" | "AS" | "LOCATION" | "PRODUCT"` Specifies the NetFlows attribute by which to group the results. - `"ADM1"` - `"AS"` - `"LOCATION"` - `"PRODUCT"` - `query: NetFlowsTimeseriesGroupsParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `product?: Array<"HTTP" | "ALL">` Filters the results by network traffic product types. - `"HTTP"` - `"ALL"` ### Returns - `NetFlowsTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.netFlows.timeseriesGroups('ADM1'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### NetFlows Timeseries Response - `NetFlowsTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` - `values: Array` ### NetFlows Summary Response - `NetFlowsSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `HTTP: string` A numeric string. - `OTHER: string` A numeric string. ### NetFlows Summary V2 Response - `NetFlowsSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### NetFlows Timeseries Groups Response - `NetFlowsTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Top ## Get top ASes by network traffic `client.radar.netFlows.top.ases(TopAsesParamsquery?, RequestOptionsoptions?): TopAsesResponse` **get** `/radar/netflows/top/ases` Retrieves the top autonomous systems by network traffic (NetFlows). ### Parameters - `query: TopAsesParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `TopAsesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.netFlows.top.ases(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientASN": 16509, "clientASName": "AMAZON-02", "value": "10" } ] }, "success": true } ``` ## Get top locations by network traffic `client.radar.netFlows.top.locations(TopLocationsParamsquery?, RequestOptionsoptions?): TopLocationsResponse` **get** `/radar/netflows/top/locations` Retrieves the top locations by network traffic (NetFlows). ### Parameters - `query: TopLocationsParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `TopLocationsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.netFlows.top.locations(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "US", "clientCountryName": "United States", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Top Ases Response - `TopAsesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Top Locations Response - `TopLocationsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # Post Quantum # Origin ## Get Origin Post-Quantum Data Summary `client.radar.postQuantum.origin.summary("KEY_AGREEMENT"dimension, OriginSummaryParamsquery?, RequestOptionsoptions?): OriginSummaryResponse` **get** `/radar/post_quantum/origin/summary/{dimension}` Returns a summary of origin post-quantum data grouped by the specified dimension. ### Parameters - `dimension: "KEY_AGREEMENT"` Specifies the origin post-quantum data dimension by which to group the results. - `"KEY_AGREEMENT"` - `query: OriginSummaryParams` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `OriginSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.postQuantum.origin.summary('KEY_AGREEMENT'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "CurveP256": "99.1234", "CurveP384": "85.5678", "CurveP521": "45.9012", "X25519": "98.3456", "X25519MLKEM768": "12.7890" } }, "success": true } ``` ## Get Origin Post-Quantum Data Over Time `client.radar.postQuantum.origin.timeseriesGroups("KEY_AGREEMENT"dimension, OriginTimeseriesGroupsParamsquery?, RequestOptionsoptions?): OriginTimeseriesGroupsResponse` **get** `/radar/post_quantum/origin/timeseries_groups/{dimension}` Returns a timeseries of origin post-quantum data grouped by the specified dimension. ### Parameters - `dimension: "KEY_AGREEMENT"` Specifies the origin post-quantum data dimension by which to group the results. - `"KEY_AGREEMENT"` - `query: OriginTimeseriesGroupsParams` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `OriginTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.postQuantum.origin.timeseriesGroups('KEY_AGREEMENT'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Origin Summary Response - `OriginSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Origin Timeseries Groups Response - `OriginTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # TLS ## Check Post-Quantum TLS support `client.radar.postQuantum.tls.support(TLSSupportParamsquery, RequestOptionsoptions?): TLSSupportResponse` **get** `/radar/post_quantum/tls/support` Tests whether a hostname or IP address supports Post-Quantum (PQ) TLS key exchange. Returns information about the negotiated key exchange algorithm and whether it uses PQ cryptography. ### Parameters - `query: TLSSupportParams` - `host: string` Hostname or IP address to test for Post-Quantum TLS support, optionally with port (defaults to 443). ### Returns - `TLSSupportResponse` - `host: string` The host that was tested - `kex: number` TLS CurveID of the negotiated key exchange - `kexName: string` Human-readable name of the key exchange algorithm - `pq: boolean` Whether the negotiated key exchange uses Post-Quantum cryptography ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.postQuantum.tls.support({ host: 'cloudflare.com' }); console.log(response.host); ``` #### Response ```json { "result": { "host": "host", "kex": 0, "kexName": "kexName", "pq": true }, "success": true } ``` ## Domain Types ### TLS Support Response - `TLSSupportResponse` - `host: string` The host that was tested - `kex: number` TLS CurveID of the negotiated key exchange - `kexName: string` Human-readable name of the key exchange algorithm - `pq: boolean` Whether the negotiated key exchange uses Post-Quantum cryptography # Search ## Search for locations, ASes, reports, and more `client.radar.search.global(SearchGlobalParamsquery, RequestOptionsoptions?): SearchGlobalResponse` **get** `/radar/search/global` Searches for locations, autonomous systems, reports, bots, certificate logs, certificate authorities, industries and verticals. Location names can be localized by sending an `Accept-Language` HTTP header with a BCP 47 language tag (e.g., `Accept-Language: pt-PT`). The full quality-value chain is supported (e.g., `pt-PT,pt;q=0.9,en;q=0.8`). ### Parameters - `query: SearchGlobalParams` - `query: string` String used to perform the search operation. - `exclude?: Array<"ADM1S" | "ASNS" | "BOTS" | 9 more>` Search types excluded from results. - `"ADM1S"` - `"ASNS"` - `"BOTS"` - `"CERTIFICATE_AUTHORITIES"` - `"CERTIFICATE_LOGS"` - `"ORIGINS"` - `"ORIGIN_REGIONS"` - `"INDUSTRIES"` - `"LOCATIONS"` - `"NOTEBOOKS"` - `"TLDS"` - `"VERTICALS"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `include?: Array<"ADM1S" | "ASNS" | "BOTS" | 9 more>` Search types included in results. - `"ADM1S"` - `"ASNS"` - `"BOTS"` - `"CERTIFICATE_AUTHORITIES"` - `"CERTIFICATE_LOGS"` - `"ORIGINS"` - `"ORIGIN_REGIONS"` - `"INDUSTRIES"` - `"LOCATIONS"` - `"NOTEBOOKS"` - `"TLDS"` - `"VERTICALS"` - `limit?: number` Limits the number of objects returned in the response. - `limitPerGroup?: number` Limits the number of objects per search category. ### Returns - `SearchGlobalResponse` - `search: Array` - `code: string` - `name: string` - `type: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.search.global({ query: 'United' }); console.log(response.search); ``` #### Response ```json { "result": { "search": [ { "code": "13335", "name": "Cloudflare", "type": "asn" } ] }, "success": true } ``` ## Domain Types ### Search Global Response - `SearchGlobalResponse` - `search: Array` - `code: string` - `name: string` - `type: string` # Verified Bots # Top ## Get top verified bots by HTTP requests `client.radar.verifiedBots.top.bots(TopBotsParamsquery?, RequestOptionsoptions?): TopBotsResponse` **get** `/radar/verified_bots/top/bots` Retrieves the top verified bots by HTTP requests, with owner and category. ### Parameters - `query: TopBotsParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `TopBotsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `botCategory: string` - `botName: string` - `botOwner: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.verifiedBots.top.bots(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "botCategory": "Search Engine Crawler", "botName": "GoogleBot", "botOwner": "Google", "value": "10" } ] }, "success": true } ``` ## Get top verified bot categories by HTTP requests `client.radar.verifiedBots.top.categories(TopCategoriesParamsquery?, RequestOptionsoptions?): TopCategoriesResponse` **get** `/radar/verified_bots/top/categories` Retrieves the top verified bot categories by HTTP requests, along with their corresponding percentage, over the total verified bot HTTP requests. ### Parameters - `query: TopCategoriesParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `TopCategoriesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `botCategory: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.verifiedBots.top.categories(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "botCategory": "Search", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Top Bots Response - `TopBotsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `botCategory: string` - `botName: string` - `botOwner: string` - `value: string` A numeric string. ### Top Categories Response - `TopCategoriesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `botCategory: string` - `value: string` A numeric string. # AS112 ## Get AS112 DNS queries time series `client.radar.as112.timeseries(AS112TimeseriesParamsquery?, RequestOptionsoptions?): AS112TimeseriesResponse` **get** `/radar/as112/timeseries` Retrieves the AS112 DNS queries over time. ### Parameters - `query: AS112TimeseriesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `AS112TimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] } }, "success": true } ``` ## Get AS112 summary by dimension `client.radar.as112.summaryV2("DNSSEC" | "EDNS" | "IP_VERSION" | 3 moredimension, AS112SummaryV2Paramsquery?, RequestOptionsoptions?): AS112SummaryV2Response` **get** `/radar/as112/summary/{dimension}` Retrieves the distribution of AS112 queries by the specified dimension. ### Parameters - `dimension: "DNSSEC" | "EDNS" | "IP_VERSION" | 3 more` Specifies the attribute by which to group the results. - `"DNSSEC"` - `"EDNS"` - `"IP_VERSION"` - `"PROTOCOL"` - `"QUERY_TYPE"` - `"RESPONSE_CODE"` - `query: AS112SummaryV2Params` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `AS112SummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.summaryV2('DNSSEC'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "IPv4": "50.168733", "IPv6": "25.084366" } }, "success": true } ``` ## Get AS112 time series grouped by dimension `client.radar.as112.timeseriesGroupsV2("DNSSEC" | "EDNS" | "IP_VERSION" | 3 moredimension, AS112TimeseriesGroupsV2Paramsquery?, RequestOptionsoptions?): AS112TimeseriesGroupsV2Response` **get** `/radar/as112/timeseries_groups/{dimension}` Retrieves the distribution of AS112 queries grouped by dimension over time. ### Parameters - `dimension: "DNSSEC" | "EDNS" | "IP_VERSION" | 3 more` Specifies the attribute by which to group the results. - `"DNSSEC"` - `"EDNS"` - `"IP_VERSION"` - `"PROTOCOL"` - `"QUERY_TYPE"` - `"RESPONSE_CODE"` - `query: AS112TimeseriesGroupsV2Params` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `AS112TimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.timeseriesGroupsV2('DNSSEC'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### AS112 Timeseries Response - `AS112TimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### AS112 Summary V2 Response - `AS112SummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### AS112 Timeseries Groups V2 Response - `AS112TimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Summary ## Get AS112 DNS queries by DNSSEC summary `client.radar.as112.summary.dnssec(SummaryDNSSECParamsquery?, RequestOptionsoptions?): SummaryDNSSECResponse` **get** `/radar/as112/summary/dnssec` Retrieves the distribution of DNS queries to AS112 by DNSSEC (DNS Security Extensions) support. ### Parameters - `query: SummaryDNSSECParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `SummaryDNSSECResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NOT_SUPPORTED: string` A numeric string. - `SUPPORTED: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.summary.dnssec(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "NOT_SUPPORTED": "10", "SUPPORTED": "10" } }, "success": true } ``` ## Get AS112 DNS queries by EDNS summary `client.radar.as112.summary.edns(SummaryEdnsParamsquery?, RequestOptionsoptions?): SummaryEdnsResponse` **get** `/radar/as112/summary/edns` Retrieves the distribution of DNS queries to AS112 by EDNS (Extension Mechanisms for DNS) support. ### Parameters - `query: SummaryEdnsParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `SummaryEdnsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NOT_SUPPORTED: string` A numeric string. - `SUPPORTED: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.summary.edns(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "NOT_SUPPORTED": "10", "SUPPORTED": "10" } }, "success": true } ``` ## Get AS112 DNS queries by IP version summary `client.radar.as112.summary.ipVersion(SummaryIPVersionParamsquery?, RequestOptionsoptions?): SummaryIPVersionResponse` **get** `/radar/as112/summary/ip_version` Retrieves the distribution of DNS queries to AS112 by IP version. ### Parameters - `query: SummaryIPVersionParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `SummaryIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `IPv4: string` A numeric string. - `IPv6: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.summary.ipVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "IPv4": "10", "IPv6": "10" } }, "success": true } ``` ## Get AS112 DNS queries by DNS protocol summary `client.radar.as112.summary.protocol(SummaryProtocolParamsquery?, RequestOptionsoptions?): SummaryProtocolResponse` **get** `/radar/as112/summary/protocol` Retrieves the distribution of DNS queries to AS112 by protocol. ### Parameters - `query: SummaryProtocolParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `SummaryProtocolResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `HTTPS: string` A numeric string. - `TCP: string` A numeric string. - `TLS: string` A numeric string. - `UDP: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.summary.protocol(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "HTTPS": "10", "TCP": "10", "TLS": "10", "UDP": "10" } }, "success": true } ``` ## Get AS112 DNS queries by type summary `client.radar.as112.summary.queryType(SummaryQueryTypeParamsquery?, RequestOptionsoptions?): SummaryQueryTypeResponse` **get** `/radar/as112/summary/query_type` Retrieves the distribution of DNS queries to AS112 by type. ### Parameters - `query: SummaryQueryTypeParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `SummaryQueryTypeResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.summary.queryType(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "A": "19", "AAAA": "1", "PTR": "74", "SOA": "5", "SRV": "1" } }, "success": true } ``` ## Get AS112 DNS queries by response code summary `client.radar.as112.summary.responseCodes(SummaryResponseCodesParamsquery?, RequestOptionsoptions?): SummaryResponseCodesResponse` **get** `/radar/as112/summary/response_codes` Retrieves the distribution of AS112 DNS requests classified by response code. ### Parameters - `query: SummaryResponseCodesParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` ### Returns - `SummaryResponseCodesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.summary.responseCodes(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "NOERROR": "70", "NOTIMP": "5", "NXDOMAIN": "10", "REFUSED": "5", "SERVFAIL": "5" } }, "success": true } ``` ## Domain Types ### Summary DNSSEC Response - `SummaryDNSSECResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NOT_SUPPORTED: string` A numeric string. - `SUPPORTED: string` A numeric string. ### Summary Edns Response - `SummaryEdnsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NOT_SUPPORTED: string` A numeric string. - `SUPPORTED: string` A numeric string. ### Summary IP Version Response - `SummaryIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `IPv4: string` A numeric string. - `IPv6: string` A numeric string. ### Summary Protocol Response - `SummaryProtocolResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `HTTPS: string` A numeric string. - `TCP: string` A numeric string. - `TLS: string` A numeric string. - `UDP: string` A numeric string. ### Summary Query Type Response - `SummaryQueryTypeResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Summary Response Codes Response - `SummaryResponseCodesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` # Timeseries Groups ## Get AS112 DNS queries by DNS protocol time series `client.radar.as112.timeseriesGroups.protocol(TimeseriesGroupProtocolParamsquery?, RequestOptionsoptions?): TimeseriesGroupProtocolResponse` **get** `/radar/as112/timeseries_groups/protocol` Retrieves the distribution of AS112 DNS requests classified by protocol over time. ### Parameters - `query: TimeseriesGroupProtocolParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `TimeseriesGroupProtocolResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `HTTPS: Array` - `TCP: Array` - `TLS: Array` - `UDP: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.timeseriesGroups.protocol(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "HTTPS": [ "10" ], "TCP": [ "10" ], "TLS": [ "10" ], "UDP": [ "10" ] } }, "success": true } ``` ## Get AS112 DNS queries by type time series `client.radar.as112.timeseriesGroups.queryType(TimeseriesGroupQueryTypeParamsquery?, RequestOptionsoptions?): TimeseriesGroupQueryTypeResponse` **get** `/radar/as112/timeseries_groups/query_type` Retrieves the distribution of AS112 DNS queries by type over time. ### Parameters - `query: TimeseriesGroupQueryTypeParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `TimeseriesGroupQueryTypeResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.timeseriesGroups.queryType(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get AS112 DNS queries by response code time series `client.radar.as112.timeseriesGroups.responseCodes(TimeseriesGroupResponseCodesParamsquery?, RequestOptionsoptions?): TimeseriesGroupResponseCodesResponse` **get** `/radar/as112/timeseries_groups/response_codes` Retrieves the distribution of AS112 DNS requests classified by response code over time. ### Parameters - `query: TimeseriesGroupResponseCodesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` ### Returns - `TimeseriesGroupResponseCodesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.timeseriesGroups.responseCodes(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get AS112 DNS queries by DNSSEC support time series `client.radar.as112.timeseriesGroups.dnssec(TimeseriesGroupDNSSECParamsquery?, RequestOptionsoptions?): TimeseriesGroupDNSSECResponse` **get** `/radar/as112/timeseries_groups/dnssec` Retrieves the distribution of AS112 DNS queries by DNSSEC (DNS Security Extensions) support over time. ### Parameters - `query: TimeseriesGroupDNSSECParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `TimeseriesGroupDNSSECResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NOT_SUPPORTED: Array` - `SUPPORTED: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.timeseriesGroups.dnssec(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "NOT_SUPPORTED": [ "10" ], "SUPPORTED": [ "10" ] } }, "success": true } ``` ## Get AS112 DNS queries by EDNS support summary `client.radar.as112.timeseriesGroups.edns(TimeseriesGroupEdnsParamsquery?, RequestOptionsoptions?): TimeseriesGroupEdnsResponse` **get** `/radar/as112/timeseries_groups/edns` Retrieves the distribution of AS112 DNS queries by EDNS (Extension Mechanisms for DNS) support over time. ### Parameters - `query: TimeseriesGroupEdnsParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `TimeseriesGroupEdnsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NOT_SUPPORTED: Array` - `SUPPORTED: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.timeseriesGroups.edns(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "NOT_SUPPORTED": [ "10" ], "SUPPORTED": [ "10" ] } }, "success": true } ``` ## Get AS112 DNS queries by IP version time series `client.radar.as112.timeseriesGroups.ipVersion(TimeseriesGroupIPVersionParamsquery?, RequestOptionsoptions?): TimeseriesGroupIPVersionResponse` **get** `/radar/as112/timeseries_groups/ip_version` Retrieves the distribution of AS112 DNS queries by IP version over time. ### Parameters - `query: TimeseriesGroupIPVersionParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "HTTPS" | "TLS">` Filters results by DNS transport protocol. - `"UDP"` - `"TCP"` - `"HTTPS"` - `"TLS"` - `queryType?: Array<"A" | "AAAA" | "A6" | 85 more | null>` Filters results by DNS query type. - `"A"` - `"AAAA"` - `"A6"` - `"AFSDB"` - `"ANY"` - `"APL"` - `"ATMA"` - `"AXFR"` - `"CAA"` - `"CDNSKEY"` - `"CDS"` - `"CERT"` - `"CNAME"` - `"CSYNC"` - `"DHCID"` - `"DLV"` - `"DNAME"` - `"DNSKEY"` - `"DOA"` - `"DS"` - `"EID"` - `"EUI48"` - `"EUI64"` - `"GPOS"` - `"GID"` - `"HINFO"` - `"HIP"` - `"HTTPS"` - `"IPSECKEY"` - `"ISDN"` - `"IXFR"` - `"KEY"` - `"KX"` - `"L32"` - `"L64"` - `"LOC"` - `"LP"` - `"MAILA"` - `"MAILB"` - `"MB"` - `"MD"` - `"MF"` - `"MG"` - `"MINFO"` - `"MR"` - `"MX"` - `"NAPTR"` - `"NB"` - `"NBSTAT"` - `"NID"` - `"NIMLOC"` - `"NINFO"` - `"NS"` - `"NSAP"` - `"NSEC"` - `"NSEC3"` - `"NSEC3PARAM"` - `"NULL"` - `"NXT"` - `"OPENPGPKEY"` - `"OPT"` - `"PTR"` - `"PX"` - `"RKEY"` - `"RP"` - `"RRSIG"` - `"RT"` - `"SIG"` - `"SINK"` - `"SMIMEA"` - `"SOA"` - `"SPF"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TA"` - `"TALINK"` - `"TKEY"` - `"TLSA"` - `"TSIG"` - `"TXT"` - `"UINFO"` - `"UID"` - `"UNSPEC"` - `"URI"` - `"WKS"` - `"X25"` - `"ZONEMD"` - `responseCode?: Array<"NOERROR" | "FORMERR" | "SERVFAIL" | 16 more>` Filters results by DNS response code. - `"NOERROR"` - `"FORMERR"` - `"SERVFAIL"` - `"NXDOMAIN"` - `"NOTIMP"` - `"REFUSED"` - `"YXDOMAIN"` - `"YXRRSET"` - `"NXRRSET"` - `"NOTAUTH"` - `"NOTZONE"` - `"BADSIG"` - `"BADKEY"` - `"BADTIME"` - `"BADMODE"` - `"BADNAME"` - `"BADALG"` - `"BADTRUNC"` - `"BADCOOKIE"` ### Returns - `TimeseriesGroupIPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `IPv4: Array` - `IPv6: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.timeseriesGroups.ipVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "IPv4": [ "10" ], "IPv6": [ "10" ] } }, "success": true } ``` ## Domain Types ### Timeseries Group Protocol Response - `TimeseriesGroupProtocolResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `HTTPS: Array` - `TCP: Array` - `TLS: Array` - `UDP: Array` ### Timeseries Group Query Type Response - `TimeseriesGroupQueryTypeResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group Response Codes Response - `TimeseriesGroupResponseCodesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group DNSSEC Response - `TimeseriesGroupDNSSECResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NOT_SUPPORTED: Array` - `SUPPORTED: Array` ### Timeseries Group Edns Response - `TimeseriesGroupEdnsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NOT_SUPPORTED: Array` - `SUPPORTED: Array` ### Timeseries Group IP Version Response - `TimeseriesGroupIPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `IPv4: Array` - `IPv6: Array` # Top ## Get top locations by AS112 DNS queries `client.radar.as112.top.locations(TopLocationsParamsquery?, RequestOptionsoptions?): TopLocationsResponse` **get** `/radar/as112/top/locations` Retrieves the top locations by AS112 DNS queries. ### Parameters - `query: TopLocationsParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `TopLocationsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.top.locations(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Get top locations by AS112 DNS queries with DNSSEC support `client.radar.as112.top.dnssec("SUPPORTED" | "NOT_SUPPORTED"dnssec, TopDNSSECParamsquery?, RequestOptionsoptions?): TopDNSSECResponse` **get** `/radar/as112/top/locations/dnssec/{dnssec}` Retrieves the top locations of DNS queries to AS112 with DNSSEC (DNS Security Extensions) support. ### Parameters - `dnssec: "SUPPORTED" | "NOT_SUPPORTED"` DNSSEC (DNS Security Extensions) status. - `"SUPPORTED"` - `"NOT_SUPPORTED"` - `query: TopDNSSECParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `TopDNSSECResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.top.dnssec('SUPPORTED'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Get top locations by AS112 DNS queries with EDNS support `client.radar.as112.top.edns("SUPPORTED" | "NOT_SUPPORTED"edns, TopEdnsParamsquery?, RequestOptionsoptions?): TopEdnsResponse` **get** `/radar/as112/top/locations/edns/{edns}` Retrieves the top locations of DNS queries to AS112 with EDNS (Extension Mechanisms for DNS) support. ### Parameters - `edns: "SUPPORTED" | "NOT_SUPPORTED"` EDNS (Extension Mechanisms for DNS) status. - `"SUPPORTED"` - `"NOT_SUPPORTED"` - `query: TopEdnsParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `TopEdnsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.top.edns('SUPPORTED'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Get top locations by AS112 DNS queries for an IP version `client.radar.as112.top.ipVersion("IPv4" | "IPv6"ipVersion, TopIPVersionParamsquery?, RequestOptionsoptions?): TopIPVersionResponse` **get** `/radar/as112/top/locations/ip_version/{ip_version}` Retrieves the top locations of DNS queries to AS112 for an IP version. ### Parameters - `ipVersion: "IPv4" | "IPv6"` IP version. - `"IPv4"` - `"IPv6"` - `query: TopIPVersionParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `TopIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.as112.top.ipVersion('IPv4'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Top Locations Response - `TopLocationsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Top DNSSEC Response - `TopDNSSECResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Top Edns Response - `TopEdnsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Top IP Version Response - `TopIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # Email ## Domain Types ### Radar Email Series - `RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Radar Email Summary - `RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. # Routing ## Get email routing summary by dimension `client.radar.email.routing.summaryV2("IP_VERSION" | "ENCRYPTED" | "ARC" | 3 moredimension, RoutingSummaryV2Paramsquery?, RequestOptionsoptions?): RoutingSummaryV2Response` **get** `/radar/email/routing/summary/{dimension}` Retrieves the distribution of email routing metrics by the specified dimension. ### Parameters - `dimension: "IP_VERSION" | "ENCRYPTED" | "ARC" | 3 more` Specifies the attribute by which to group the results. - `"IP_VERSION"` - `"ENCRYPTED"` - `"ARC"` - `"DKIM"` - `"DMARC"` - `"SPF"` - `query: RoutingSummaryV2Params` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `encrypted?: Array<"ENCRYPTED" | "NOT_ENCRYPTED">` Filters results by encryption status (encrypted vs. not-encrypted). - `"ENCRYPTED"` - `"NOT_ENCRYPTED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `RoutingSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.summaryV2('IP_VERSION'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "FAIL": "25.084366", "PASS": "50.168733" } }, "success": true } ``` ## Get email routing time series grouped by dimension `client.radar.email.routing.timeseriesGroupsV2("IP_VERSION" | "ENCRYPTED" | "ARC" | 3 moredimension, RoutingTimeseriesGroupsV2Paramsquery?, RequestOptionsoptions?): RoutingTimeseriesGroupsV2Response` **get** `/radar/email/routing/timeseries_groups/{dimension}` Retrieves the distribution of email routing metrics grouped by dimension over time. ### Parameters - `dimension: "IP_VERSION" | "ENCRYPTED" | "ARC" | 3 more` Specifies the attribute by which to group the results. - `"IP_VERSION"` - `"ENCRYPTED"` - `"ARC"` - `"DKIM"` - `"DMARC"` - `"SPF"` - `query: RoutingTimeseriesGroupsV2Params` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `encrypted?: Array<"ENCRYPTED" | "NOT_ENCRYPTED">` Filters results by encryption status (encrypted vs. not-encrypted). - `"ENCRYPTED"` - `"NOT_ENCRYPTED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `RoutingTimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.timeseriesGroupsV2('IP_VERSION'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Routing Summary V2 Response - `RoutingSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Routing Timeseries Groups V2 Response - `RoutingTimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Summary ## Get email ARC validation summary `client.radar.email.routing.summary.arc(SummaryARCParamsquery?, RequestOptionsoptions?): SummaryARCResponse` **get** `/radar/email/routing/summary/arc` Retrieves the distribution of emails by ARC (Authenticated Received Chain) validation. ### Parameters - `query: SummaryARCParams` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `encrypted?: Array<"ENCRYPTED" | "NOT_ENCRYPTED">` Filters results by encryption status (encrypted vs. not-encrypted). - `"ENCRYPTED"` - `"NOT_ENCRYPTED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `SummaryARCResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.summary.arc(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "FAIL": "10", "NONE": "10", "PASS": "10" } }, "success": true } ``` ## Get email DKIM validation summary `client.radar.email.routing.summary.dkim(SummaryDKIMParamsquery?, RequestOptionsoptions?): SummaryDKIMResponse` **get** `/radar/email/routing/summary/dkim` Retrieves the distribution of emails by DKIM (DomainKeys Identified Mail) validation. ### Parameters - `query: SummaryDKIMParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `encrypted?: Array<"ENCRYPTED" | "NOT_ENCRYPTED">` Filters results by encryption status (encrypted vs. not-encrypted). - `"ENCRYPTED"` - `"NOT_ENCRYPTED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `SummaryDKIMResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.summary.dkim(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "FAIL": "10", "NONE": "10", "PASS": "10" } }, "success": true } ``` ## Get email DMARC validation summary `client.radar.email.routing.summary.dmarc(SummaryDMARCParamsquery?, RequestOptionsoptions?): SummaryDMARCResponse` **get** `/radar/email/routing/summary/dmarc` Retrieves the distribution of emails by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation. ### Parameters - `query: SummaryDMARCParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `encrypted?: Array<"ENCRYPTED" | "NOT_ENCRYPTED">` Filters results by encryption status (encrypted vs. not-encrypted). - `"ENCRYPTED"` - `"NOT_ENCRYPTED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `SummaryDMARCResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.summary.dmarc(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "FAIL": "10", "NONE": "10", "PASS": "10" } }, "success": true } ``` ## Get email encryption status summary `client.radar.email.routing.summary.encrypted(SummaryEncryptedParamsquery?, RequestOptionsoptions?): SummaryEncryptedResponse` **get** `/radar/email/routing/summary/encrypted` Retrieves the distribution of emails by encryption status (encrypted vs. not-encrypted). ### Parameters - `query: SummaryEncryptedParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `SummaryEncryptedResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `ENCRYPTED: string` A numeric string. - `NOT_ENCRYPTED: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.summary.encrypted(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "ENCRYPTED": "10", "NOT_ENCRYPTED": "10" } }, "success": true } ``` ## Get email IP version summary `client.radar.email.routing.summary.ipVersion(SummaryIPVersionParamsquery?, RequestOptionsoptions?): SummaryIPVersionResponse` **get** `/radar/email/routing/summary/ip_version` Retrieves the distribution of emails by IP version. ### Parameters - `query: SummaryIPVersionParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `encrypted?: Array<"ENCRYPTED" | "NOT_ENCRYPTED">` Filters results by encryption status (encrypted vs. not-encrypted). - `"ENCRYPTED"` - `"NOT_ENCRYPTED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `SummaryIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `IPv4: string` A numeric string. - `IPv6: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.summary.ipVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "IPv4": "10", "IPv6": "10" } }, "success": true } ``` ## Get email SPF validation summary `client.radar.email.routing.summary.spf(SummarySPFParamsquery?, RequestOptionsoptions?): SummarySPFResponse` **get** `/radar/email/routing/summary/spf` Retrieves the distribution of emails by SPF (Sender Policy Framework) validation. ### Parameters - `query: SummarySPFParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `encrypted?: Array<"ENCRYPTED" | "NOT_ENCRYPTED">` Filters results by encryption status (encrypted vs. not-encrypted). - `"ENCRYPTED"` - `"NOT_ENCRYPTED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummarySPFResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.summary.spf(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "FAIL": "10", "NONE": "10", "PASS": "10" } }, "success": true } ``` ## Domain Types ### Summary ARC Response - `SummaryARCResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Summary DKIM Response - `SummaryDKIMResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Summary DMARC Response - `SummaryDMARCResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Summary Encrypted Response - `SummaryEncryptedResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `ENCRYPTED: string` A numeric string. - `NOT_ENCRYPTED: string` A numeric string. ### Summary IP Version Response - `SummaryIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `IPv4: string` A numeric string. - `IPv6: string` A numeric string. ### Summary SPF Response - `SummarySPFResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. # Timeseries Groups ## Get email ARC validation time series `client.radar.email.routing.timeseriesGroups.arc(TimeseriesGroupARCParamsquery?, RequestOptionsoptions?): TimeseriesGroupARCResponse` **get** `/radar/email/routing/timeseries_groups/arc` Retrieves the distribution of emails by ARC (Authenticated Received Chain) validation over time. ### Parameters - `query: TimeseriesGroupARCParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `encrypted?: Array<"ENCRYPTED" | "NOT_ENCRYPTED">` Filters results by encryption status (encrypted vs. not-encrypted). - `"ENCRYPTED"` - `"NOT_ENCRYPTED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `TimeseriesGroupARCResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.timeseriesGroups.arc(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "FAIL": [ "10" ], "NONE": [ "10" ], "PASS": [ "10" ] } }, "success": true } ``` ## Get email DKIM validation time series `client.radar.email.routing.timeseriesGroups.dkim(TimeseriesGroupDKIMParamsquery?, RequestOptionsoptions?): TimeseriesGroupDKIMResponse` **get** `/radar/email/routing/timeseries_groups/dkim` Retrieves the distribution of emails by DKIM (DomainKeys Identified Mail) validation over time. ### Parameters - `query: TimeseriesGroupDKIMParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `encrypted?: Array<"ENCRYPTED" | "NOT_ENCRYPTED">` Filters results by encryption status (encrypted vs. not-encrypted). - `"ENCRYPTED"` - `"NOT_ENCRYPTED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `TimeseriesGroupDKIMResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.timeseriesGroups.dkim(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "FAIL": [ "10" ], "NONE": [ "10" ], "PASS": [ "10" ] } }, "success": true } ``` ## Get email DMARC validation time series `client.radar.email.routing.timeseriesGroups.dmarc(TimeseriesGroupDMARCParamsquery?, RequestOptionsoptions?): TimeseriesGroupDMARCResponse` **get** `/radar/email/routing/timeseries_groups/dmarc` Retrieves the distribution of emails by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation over time. ### Parameters - `query: TimeseriesGroupDMARCParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `encrypted?: Array<"ENCRYPTED" | "NOT_ENCRYPTED">` Filters results by encryption status (encrypted vs. not-encrypted). - `"ENCRYPTED"` - `"NOT_ENCRYPTED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `TimeseriesGroupDMARCResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.timeseriesGroups.dmarc(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "FAIL": [ "10" ], "NONE": [ "10" ], "PASS": [ "10" ] } }, "success": true } ``` ## Get email encryption status time series `client.radar.email.routing.timeseriesGroups.encrypted(TimeseriesGroupEncryptedParamsquery?, RequestOptionsoptions?): TimeseriesGroupEncryptedResponse` **get** `/radar/email/routing/timeseries_groups/encrypted` Retrieves the distribution of emails by encryption status (encrypted vs. not-encrypted) over time. ### Parameters - `query: TimeseriesGroupEncryptedParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `TimeseriesGroupEncryptedResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `ENCRYPTED: Array` - `NOT_ENCRYPTED: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.timeseriesGroups.encrypted(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "ENCRYPTED": [ "10" ], "NOT_ENCRYPTED": [ "10" ] } }, "success": true } ``` ## Get email IP version time series `client.radar.email.routing.timeseriesGroups.ipVersion(TimeseriesGroupIPVersionParamsquery?, RequestOptionsoptions?): TimeseriesGroupIPVersionResponse` **get** `/radar/email/routing/timeseries_groups/ip_version` Retrieves the distribution of emails by IP version over time. ### Parameters - `query: TimeseriesGroupIPVersionParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `encrypted?: Array<"ENCRYPTED" | "NOT_ENCRYPTED">` Filters results by encryption status (encrypted vs. not-encrypted). - `"ENCRYPTED"` - `"NOT_ENCRYPTED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `TimeseriesGroupIPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `IPv4: Array` - `IPv6: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.timeseriesGroups.ipVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "IPv4": [ "10" ], "IPv6": [ "10" ] } }, "success": true } ``` ## Get email SPF validation time series `client.radar.email.routing.timeseriesGroups.spf(TimeseriesGroupSPFParamsquery?, RequestOptionsoptions?): TimeseriesGroupSPFResponse` **get** `/radar/email/routing/timeseries_groups/spf` Retrieves the distribution of emails by SPF (Sender Policy Framework) validation over time. ### Parameters - `query: TimeseriesGroupSPFParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `encrypted?: Array<"ENCRYPTED" | "NOT_ENCRYPTED">` Filters results by encryption status (encrypted vs. not-encrypted). - `"ENCRYPTED"` - `"NOT_ENCRYPTED"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `TimeseriesGroupSPFResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.routing.timeseriesGroups.spf(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "FAIL": [ "10" ], "NONE": [ "10" ], "PASS": [ "10" ] } }, "success": true } ``` ## Domain Types ### Timeseries Group ARC Response - `TimeseriesGroupARCResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Timeseries Group DKIM Response - `TimeseriesGroupDKIMResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Timeseries Group DMARC Response - `TimeseriesGroupDMARCResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Timeseries Group Encrypted Response - `TimeseriesGroupEncryptedResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `ENCRYPTED: Array` - `NOT_ENCRYPTED: Array` ### Timeseries Group IP Version Response - `TimeseriesGroupIPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `IPv4: Array` - `IPv6: Array` ### Timeseries Group SPF Response - `TimeseriesGroupSPFResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` # Security ## Get email security summary by dimension `client.radar.email.security.summaryV2("SPAM" | "MALICIOUS" | "SPOOF" | 6 moredimension, SecuritySummaryV2Paramsquery?, RequestOptionsoptions?): SecuritySummaryV2Response` **get** `/radar/email/security/summary/{dimension}` Retrieves the distribution of email security metrics by the specified dimension. ### Parameters - `dimension: "SPAM" | "MALICIOUS" | "SPOOF" | 6 more` Specifies the attribute by which to group the results. - `"SPAM"` - `"MALICIOUS"` - `"SPOOF"` - `"THREAT_CATEGORY"` - `"ARC"` - `"DKIM"` - `"DMARC"` - `"SPF"` - `"TLS_VERSION"` - `query: SecuritySummaryV2Params` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `SecuritySummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.summaryV2('SPAM'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "FAIL": "25.084366", "PASS": "50.168733" } }, "success": true } ``` ## Get email security time series grouped by dimension `client.radar.email.security.timeseriesGroupsV2("SPAM" | "MALICIOUS" | "SPOOF" | 6 moredimension, SecurityTimeseriesGroupsV2Paramsquery?, RequestOptionsoptions?): SecurityTimeseriesGroupsV2Response` **get** `/radar/email/security/timeseries_groups/{dimension}` Retrieves the distribution of email security metrics grouped by dimension over time. ### Parameters - `dimension: "SPAM" | "MALICIOUS" | "SPOOF" | 6 more` Specifies the attribute by which to group the results. - `"SPAM"` - `"MALICIOUS"` - `"SPOOF"` - `"THREAT_CATEGORY"` - `"ARC"` - `"DKIM"` - `"DMARC"` - `"SPF"` - `"TLS_VERSION"` - `query: SecurityTimeseriesGroupsV2Params` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `SecurityTimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.timeseriesGroupsV2('SPAM'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Security Summary V2 Response - `SecuritySummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Security Timeseries Groups V2 Response - `SecurityTimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Top # TLDs ## Get top TLDs by email message volume `client.radar.email.security.top.tlds.get(TLDGetParamsquery?, RequestOptionsoptions?): TLDGetResponse` **get** `/radar/email/security/top/tlds` Retrieves the top TLDs by number of email messages. ### Parameters - `query: TLDGetParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tldCategory?: "CLASSIC" | "COUNTRY"` Filters results by TLD category. - `"CLASSIC"` - `"COUNTRY"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `TLDGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const tld = await client.radar.email.security.top.tlds.get(); console.log(tld.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "name": "com.", "value": "10" } ] }, "success": true } ``` ## Domain Types ### TLD Get Response - `TLDGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` A numeric string. # Malicious ## Get top TLDs by email malicious classification `client.radar.email.security.top.tlds.malicious.get("MALICIOUS" | "NOT_MALICIOUS"malicious, MaliciousGetParamsquery?, RequestOptionsoptions?): MaliciousGetResponse` **get** `/radar/email/security/top/tlds/malicious/{malicious}` Retrieves the top TLDs by emails classified as malicious or not. ### Parameters - `malicious: "MALICIOUS" | "NOT_MALICIOUS"` Malicious classification. - `"MALICIOUS"` - `"NOT_MALICIOUS"` - `query: MaliciousGetParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tldCategory?: "CLASSIC" | "COUNTRY"` Filters results by TLD category. - `"CLASSIC"` - `"COUNTRY"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `MaliciousGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const malicious = await client.radar.email.security.top.tlds.malicious.get('MALICIOUS'); console.log(malicious.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "name": "com.", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Malicious Get Response - `MaliciousGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` A numeric string. # Spam ## Get top TLDs by email spam classification `client.radar.email.security.top.tlds.spam.get("SPAM" | "NOT_SPAM"spam, SpamGetParamsquery?, RequestOptionsoptions?): SpamGetResponse` **get** `/radar/email/security/top/tlds/spam/{spam}` Retrieves the top TLDs by emails classified as spam or not. ### Parameters - `spam: "SPAM" | "NOT_SPAM"` Spam classification. - `"SPAM"` - `"NOT_SPAM"` - `query: SpamGetParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tldCategory?: "CLASSIC" | "COUNTRY"` Filters results by TLD category. - `"CLASSIC"` - `"COUNTRY"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `SpamGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const spam = await client.radar.email.security.top.tlds.spam.get('SPAM'); console.log(spam.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "name": "com.", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Spam Get Response - `SpamGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` A numeric string. # Spoof ## Get top TLDs by email spoof classification `client.radar.email.security.top.tlds.spoof.get("SPOOF" | "NOT_SPOOF"spoof, SpoofGetParamsquery?, RequestOptionsoptions?): SpoofGetResponse` **get** `/radar/email/security/top/tlds/spoof/{spoof}` Retrieves the top TLDs by emails classified as spoof or not. ### Parameters - `spoof: "SPOOF" | "NOT_SPOOF"` Spoof classification. - `"SPOOF"` - `"NOT_SPOOF"` - `query: SpoofGetParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tldCategory?: "CLASSIC" | "COUNTRY"` Filters results by TLD category. - `"CLASSIC"` - `"COUNTRY"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `SpoofGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const spoof = await client.radar.email.security.top.tlds.spoof.get('SPOOF'); console.log(spoof.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "name": "com.", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Spoof Get Response - `SpoofGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` A numeric string. # Summary ## Get email ARC validation summary `client.radar.email.security.summary.arc(SummaryARCParamsquery?, RequestOptionsoptions?): SummaryARCResponse` **get** `/radar/email/security/summary/arc` Retrieves the distribution of emails by ARC (Authenticated Received Chain) validation. ### Parameters - `query: SummaryARCParams` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `SummaryARCResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.summary.arc(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "FAIL": "10", "NONE": "10", "PASS": "10" } }, "success": true } ``` ## Get email DKIM validation summary `client.radar.email.security.summary.dkim(SummaryDKIMParamsquery?, RequestOptionsoptions?): SummaryDKIMResponse` **get** `/radar/email/security/summary/dkim` Retrieves the distribution of emails by DKIM (DomainKeys Identified Mail) validation. ### Parameters - `query: SummaryDKIMParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `SummaryDKIMResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.summary.dkim(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "FAIL": "10", "NONE": "10", "PASS": "10" } }, "success": true } ``` ## Get email DMARC validation summary `client.radar.email.security.summary.dmarc(SummaryDMARCParamsquery?, RequestOptionsoptions?): SummaryDMARCResponse` **get** `/radar/email/security/summary/dmarc` Retrieves the distribution of emails by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation. ### Parameters - `query: SummaryDMARCParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `SummaryDMARCResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.summary.dmarc(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "FAIL": "10", "NONE": "10", "PASS": "10" } }, "success": true } ``` ## Get email malicious classification summary `client.radar.email.security.summary.malicious(SummaryMaliciousParamsquery?, RequestOptionsoptions?): SummaryMaliciousResponse` **get** `/radar/email/security/summary/malicious` Retrieves the distribution of emails by malicious classification. ### Parameters - `query: SummaryMaliciousParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `SummaryMaliciousResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `MALICIOUS: string` A numeric string. - `NOT_MALICIOUS: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.summary.malicious(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "MALICIOUS": "10", "NOT_MALICIOUS": "10" } }, "success": true } ``` ## Get email spam classification summary `client.radar.email.security.summary.spam(SummarySpamParamsquery?, RequestOptionsoptions?): SummarySpamResponse` **get** `/radar/email/security/summary/spam` Retrieves the proportion of emails by spam classification (spam vs. non-spam). ### Parameters - `query: SummarySpamParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `SummarySpamResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NOT_SPAM: string` A numeric string. - `SPAM: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.summary.spam(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "NOT_SPAM": "10", "SPAM": "10" } }, "success": true } ``` ## Get email SPF validation summary `client.radar.email.security.summary.spf(SummarySPFParamsquery?, RequestOptionsoptions?): SummarySPFResponse` **get** `/radar/email/security/summary/spf` Retrieves the distribution of emails by SPF (Sender Policy Framework) validation. ### Parameters - `query: SummarySPFParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `SummarySPFResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.summary.spf(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "FAIL": "10", "NONE": "10", "PASS": "10" } }, "success": true } ``` ## Get email threat category summary `client.radar.email.security.summary.threatCategory(SummaryThreatCategoryParamsquery?, RequestOptionsoptions?): SummaryThreatCategoryResponse` **get** `/radar/email/security/summary/threat_category` Retrieves the distribution of emails by threat categories. ### Parameters - `query: SummaryThreatCategoryParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `SummaryThreatCategoryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `BrandImpersonation: string` A numeric string. - `CredentialHarvester: string` A numeric string. - `IdentityDeception: string` A numeric string. - `Link: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.summary.threatCategory(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "BrandImpersonation": "10", "CredentialHarvester": "10", "IdentityDeception": "10", "Link": "10" } }, "success": true } ``` ## Get email spoof classification summary `client.radar.email.security.summary.spoof(SummarySpoofParamsquery?, RequestOptionsoptions?): SummarySpoofResponse` **get** `/radar/email/security/summary/spoof` Retrieves the proportion of emails by spoof classification (spoof vs. non-spoof). ### Parameters - `query: SummarySpoofParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `SummarySpoofResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NOT_SPOOF: string` A numeric string. - `SPOOF: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.summary.spoof(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "NOT_SPOOF": "10", "SPOOF": "10" } }, "success": true } ``` ## Get email TLS version summary `client.radar.email.security.summary.tlsVersion(SummaryTLSVersionParamsquery?, RequestOptionsoptions?): SummaryTLSVersionResponse` **get** `/radar/email/security/summary/tls_version` Retrieves the distribution of emails by TLS version. ### Parameters - `query: SummaryTLSVersionParams` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `SummaryTLSVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `"TLS 1.0": string` A numeric string. - `"TLS 1.1": string` A numeric string. - `"TLS 1.2": string` A numeric string. - `"TLS 1.3": string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.summary.tlsVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "TLS 1.0": "10", "TLS 1.1": "10", "TLS 1.2": "10", "TLS 1.3": "10" } }, "success": true } ``` ## Domain Types ### Summary ARC Response - `SummaryARCResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Summary DKIM Response - `SummaryDKIMResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Summary DMARC Response - `SummaryDMARCResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Summary Malicious Response - `SummaryMaliciousResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `MALICIOUS: string` A numeric string. - `NOT_MALICIOUS: string` A numeric string. ### Summary Spam Response - `SummarySpamResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NOT_SPAM: string` A numeric string. - `SPAM: string` A numeric string. ### Summary SPF Response - `SummarySPFResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: RadarEmailSummary` - `FAIL: string` A numeric string. - `NONE: string` A numeric string. - `PASS: string` A numeric string. ### Summary Threat Category Response - `SummaryThreatCategoryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `BrandImpersonation: string` A numeric string. - `CredentialHarvester: string` A numeric string. - `IdentityDeception: string` A numeric string. - `Link: string` A numeric string. ### Summary Spoof Response - `SummarySpoofResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NOT_SPOOF: string` A numeric string. - `SPOOF: string` A numeric string. ### Summary TLS Version Response - `SummaryTLSVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `"TLS 1.0": string` A numeric string. - `"TLS 1.1": string` A numeric string. - `"TLS 1.2": string` A numeric string. - `"TLS 1.3": string` A numeric string. # Timeseries Groups ## Get email ARC validation time series `client.radar.email.security.timeseriesGroups.arc(TimeseriesGroupARCParamsquery?, RequestOptionsoptions?): TimeseriesGroupARCResponse` **get** `/radar/email/security/timeseries_groups/arc` Retrieves the distribution of emails by ARC (Authenticated Received Chain) validation over time. ### Parameters - `query: TimeseriesGroupARCParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `TimeseriesGroupARCResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.timeseriesGroups.arc(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "FAIL": [ "10" ], "NONE": [ "10" ], "PASS": [ "10" ] } }, "success": true } ``` ## Get email DKIM validation time series `client.radar.email.security.timeseriesGroups.dkim(TimeseriesGroupDKIMParamsquery?, RequestOptionsoptions?): TimeseriesGroupDKIMResponse` **get** `/radar/email/security/timeseries_groups/dkim` Retrieves the distribution of emails by DKIM (DomainKeys Identified Mail) validation over time. ### Parameters - `query: TimeseriesGroupDKIMParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `TimeseriesGroupDKIMResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.timeseriesGroups.dkim(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "FAIL": [ "10" ], "NONE": [ "10" ], "PASS": [ "10" ] } }, "success": true } ``` ## Get email DMARC validation time series `client.radar.email.security.timeseriesGroups.dmarc(TimeseriesGroupDMARCParamsquery?, RequestOptionsoptions?): TimeseriesGroupDMARCResponse` **get** `/radar/email/security/timeseries_groups/dmarc` Retrieves the distribution of emails by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation over time. ### Parameters - `query: TimeseriesGroupDMARCParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `TimeseriesGroupDMARCResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.timeseriesGroups.dmarc(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "FAIL": [ "10" ], "NONE": [ "10" ], "PASS": [ "10" ] } }, "success": true } ``` ## Get email malicious classification time series `client.radar.email.security.timeseriesGroups.malicious(TimeseriesGroupMaliciousParamsquery?, RequestOptionsoptions?): TimeseriesGroupMaliciousResponse` **get** `/radar/email/security/timeseries_groups/malicious` Retrieves the distribution of emails by malicious classification over time. ### Parameters - `query: TimeseriesGroupMaliciousParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `TimeseriesGroupMaliciousResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `MALICIOUS: Array` - `NOT_MALICIOUS: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.timeseriesGroups.malicious(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "MALICIOUS": [ "10" ], "NOT_MALICIOUS": [ "10" ] } }, "success": true } ``` ## Get email spam classification time series `client.radar.email.security.timeseriesGroups.spam(TimeseriesGroupSpamParamsquery?, RequestOptionsoptions?): TimeseriesGroupSpamResponse` **get** `/radar/email/security/timeseries_groups/spam` Retrieves the distribution of emails by spam classification (spam vs. non-spam) over time. ### Parameters - `query: TimeseriesGroupSpamParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `TimeseriesGroupSpamResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NOT_SPAM: Array` - `SPAM: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.timeseriesGroups.spam(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "NOT_SPAM": [ "10" ], "SPAM": [ "10" ] } }, "success": true } ``` ## Get email SPF validation time series `client.radar.email.security.timeseriesGroups.spf(TimeseriesGroupSPFParamsquery?, RequestOptionsoptions?): TimeseriesGroupSPFResponse` **get** `/radar/email/security/timeseries_groups/spf` Retrieves the distribution of emails by SPF (Sender Policy Framework) validation over time. ### Parameters - `query: TimeseriesGroupSPFParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `TimeseriesGroupSPFResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.timeseriesGroups.spf(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "FAIL": [ "10" ], "NONE": [ "10" ], "PASS": [ "10" ] } }, "success": true } ``` ## Get email threat category time series `client.radar.email.security.timeseriesGroups.threatCategory(TimeseriesGroupThreatCategoryParamsquery?, RequestOptionsoptions?): TimeseriesGroupThreatCategoryResponse` **get** `/radar/email/security/timeseries_groups/threat_category` Retrieves the distribution of emails by threat category over time. ### Parameters - `query: TimeseriesGroupThreatCategoryParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `TimeseriesGroupThreatCategoryResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `BrandImpersonation: Array` - `CredentialHarvester: Array` - `IdentityDeception: Array` - `Link: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.timeseriesGroups.threatCategory(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "BrandImpersonation": [ "10" ], "CredentialHarvester": [ "10" ], "IdentityDeception": [ "10" ], "Link": [ "10" ] } }, "success": true } ``` ## Get email spoof classification time series `client.radar.email.security.timeseriesGroups.spoof(TimeseriesGroupSpoofParamsquery?, RequestOptionsoptions?): TimeseriesGroupSpoofResponse` **get** `/radar/email/security/timeseries_groups/spoof` Retrieves the distribution of emails by spoof classification (spoof vs. non-spoof) over time. ### Parameters - `query: TimeseriesGroupSpoofParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | "TLSv1_3">` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` ### Returns - `TimeseriesGroupSpoofResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NOT_SPOOF: Array` - `SPOOF: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.timeseriesGroups.spoof(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "NOT_SPOOF": [ "10" ], "SPOOF": [ "10" ] } }, "success": true } ``` ## Get email TLS version time series `client.radar.email.security.timeseriesGroups.tlsVersion(TimeseriesGroupTLSVersionParamsquery?, RequestOptionsoptions?): TimeseriesGroupTLSVersionResponse` **get** `/radar/email/security/timeseries_groups/tls_version` Retrieves the distribution of emails by TLS version over time. ### Parameters - `query: TimeseriesGroupTLSVersionParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `arc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by ARC (Authenticated Received Chain) validation. - `"PASS"` - `"NONE"` - `"FAIL"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `dkim?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DKIM (DomainKeys Identified Mail) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `dmarc?: Array<"PASS" | "NONE" | "FAIL">` Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. - `spf?: Array<"PASS" | "NONE" | "FAIL">` Filters results by SPF (Sender Policy Framework) validation status. - `"PASS"` - `"NONE"` - `"FAIL"` ### Returns - `TimeseriesGroupTLSVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `"TLS 1.0": Array` - `"TLS 1.1": Array` - `"TLS 1.2": Array` - `"TLS 1.3": Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.email.security.timeseriesGroups.tlsVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "TLS 1.0": [ "10" ], "TLS 1.1": [ "10" ], "TLS 1.2": [ "10" ], "TLS 1.3": [ "10" ] } }, "success": true } ``` ## Domain Types ### Timeseries Group ARC Response - `TimeseriesGroupARCResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Timeseries Group DKIM Response - `TimeseriesGroupDKIMResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Timeseries Group DMARC Response - `TimeseriesGroupDMARCResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Timeseries Group Malicious Response - `TimeseriesGroupMaliciousResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `MALICIOUS: Array` - `NOT_MALICIOUS: Array` ### Timeseries Group Spam Response - `TimeseriesGroupSpamResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NOT_SPAM: Array` - `SPAM: Array` ### Timeseries Group SPF Response - `TimeseriesGroupSPFResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: RadarEmailSeries` - `FAIL: Array` - `NONE: Array` - `PASS: Array` ### Timeseries Group Threat Category Response - `TimeseriesGroupThreatCategoryResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `BrandImpersonation: Array` - `CredentialHarvester: Array` - `IdentityDeception: Array` - `Link: Array` ### Timeseries Group Spoof Response - `TimeseriesGroupSpoofResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NOT_SPOOF: Array` - `SPOOF: Array` ### Timeseries Group TLS Version Response - `TimeseriesGroupTLSVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `"TLS 1.0": Array` - `"TLS 1.1": Array` - `"TLS 1.2": Array` - `"TLS 1.3": Array` # Attacks # Layer3 ## Get layer 3 attacks summary by dimension `client.radar.attacks.layer3.summaryV2("PROTOCOL" | "IP_VERSION" | "VECTOR" | 4 moredimension, Layer3SummaryV2Paramsquery?, RequestOptionsoptions?): Layer3SummaryV2Response` **get** `/radar/attacks/layer3/summary/{dimension}` Retrieves the distribution of layer 3 attacks by the specified dimension. ### Parameters - `dimension: "PROTOCOL" | "IP_VERSION" | "VECTOR" | 4 more` Specifies the attribute by which to group the results. - `"PROTOCOL"` - `"IP_VERSION"` - `"VECTOR"` - `"DURATION"` - `"BITRATE"` - `"VERTICAL"` - `"INDUSTRY"` - `query: Layer3SummaryV2Params` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `Layer3SummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.summaryV2('PROTOCOL'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "TCP": "50.168733", "UDP": "25.084366" } }, "success": true } ``` ## Get layer 3 attacks by bytes time series `client.radar.attacks.layer3.timeseries(Layer3TimeseriesParamsquery?, RequestOptionsoptions?): Layer3TimeseriesResponse` **get** `/radar/attacks/layer3/timeseries` Retrieves layer 3 attacks over time. ### Parameters - `query: Layer3TimeseriesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `metric?: "BYTES" | "BYTES_OLD"` Measurement units, eg. bytes. - `"BYTES"` - `"BYTES_OLD"` - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE_CHANGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE_CHANGE"` - `"MIN0_MAX"` - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `Layer3TimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] } }, "success": true } ``` ## Get layer 3 attacks time series grouped by dimension `client.radar.attacks.layer3.timeseriesGroupsV2("PROTOCOL" | "IP_VERSION" | "VECTOR" | 4 moredimension, Layer3TimeseriesGroupsV2Paramsquery?, RequestOptionsoptions?): Layer3TimeseriesGroupsV2Response` **get** `/radar/attacks/layer3/timeseries_groups/{dimension}` Retrieves the distribution of layer 3 attacks grouped by dimension over time. ### Parameters - `dimension: "PROTOCOL" | "IP_VERSION" | "VECTOR" | 4 more` Specifies the attribute by which to group the results. - `"PROTOCOL"` - `"IP_VERSION"` - `"VECTOR"` - `"DURATION"` - `"BITRATE"` - `"VERTICAL"` - `"INDUSTRY"` - `query: Layer3TimeseriesGroupsV2Params` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `Layer3TimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.timeseriesGroupsV2('PROTOCOL'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Layer3 Summary V2 Response - `Layer3SummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Layer3 Timeseries Response - `Layer3TimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Layer3 Timeseries Groups V2 Response - `Layer3TimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Summary ## Get layer 3 attacks by bitrate summary `client.radar.attacks.layer3.summary.bitrate(SummaryBitrateParamsquery?, RequestOptionsoptions?): SummaryBitrateResponse` **get** `/radar/attacks/layer3/summary/bitrate` Retrieves the distribution of layer 3 attacks by bitrate. ### Parameters - `query: SummaryBitrateParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `SummaryBitrateResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `_1_GBPS_TO_10_GBPS: string` A numeric string. - `_10_GBPS_TO_100_GBPS: string` A numeric string. - `_500_MBPS_TO_1_GBPS: string` A numeric string. - `OVER_100_GBPS: string` A numeric string. - `UNDER_500_MBPS: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.summary.bitrate(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "_1_GBPS_TO_10_GBPS": "10", "_10_GBPS_TO_100_GBPS": "10", "_500_MBPS_TO_1_GBPS": "10", "OVER_100_GBPS": "10", "UNDER_500_MBPS": "10" } }, "success": true } ``` ## Get layer 3 attacks by duration summary `client.radar.attacks.layer3.summary.duration(SummaryDurationParamsquery?, RequestOptionsoptions?): SummaryDurationResponse` **get** `/radar/attacks/layer3/summary/duration` Retrieves the distribution of layer 3 attacks by duration. ### Parameters - `query: SummaryDurationParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `SummaryDurationResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `_1_HOUR_TO_3_HOURS: string` A numeric string. - `_10_MINS_TO_20_MINS: string` A numeric string. - `_20_MINS_TO_40_MINS: string` A numeric string. - `_40_MINS_TO_1_HOUR: string` A numeric string. - `OVER_3_HOURS: string` A numeric string. - `UNDER_10_MINS: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.summary.duration(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "_1_HOUR_TO_3_HOURS": "10", "_10_MINS_TO_20_MINS": "10", "_20_MINS_TO_40_MINS": "10", "_40_MINS_TO_1_HOUR": "10", "OVER_3_HOURS": "10", "UNDER_10_MINS": "10" } }, "success": true } ``` ## Get layer 3 attacks by IP version summary `client.radar.attacks.layer3.summary.ipVersion(SummaryIPVersionParamsquery?, RequestOptionsoptions?): SummaryIPVersionResponse` **get** `/radar/attacks/layer3/summary/ip_version` Retrieves the distribution of layer 3 attacks by IP version. ### Parameters - `query: SummaryIPVersionParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `SummaryIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `IPv4: string` A numeric string. - `IPv6: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.summary.ipVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "IPv4": "10", "IPv6": "10" } }, "success": true } ``` ## Get layer 3 attacks by protocol summary `client.radar.attacks.layer3.summary.protocol(SummaryProtocolParamsquery?, RequestOptionsoptions?): SummaryProtocolResponse` **get** `/radar/attacks/layer3/summary/protocol` Retrieves the distribution of layer 3 attacks by protocol. ### Parameters - `query: SummaryProtocolParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryProtocolResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `GRE: string` A numeric string. - `ICMP: string` A numeric string. - `TCP: string` A numeric string. - `UDP: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.summary.protocol(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "GRE": "10", "ICMP": "10", "TCP": "10", "UDP": "10" } }, "success": true } ``` ## Get layer 3 attacks by vector summary `client.radar.attacks.layer3.summary.vector(SummaryVectorParamsquery?, RequestOptionsoptions?): SummaryVectorResponse` **get** `/radar/attacks/layer3/summary/vector` Retrieves the distribution of layer 3 attacks by vector. ### Parameters - `query: SummaryVectorParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `SummaryVectorResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.summary.vector(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "ACK Flood": "65.662148", "SYN Flood": "16.86401" } }, "success": true } ``` ## Get layer 3 attacks by targeted industry summary `client.radar.attacks.layer3.summary.industry(SummaryIndustryParamsquery?, RequestOptionsoptions?): SummaryIndustryResponse` **get** `/radar/attacks/layer3/summary/industry` Retrieves the distribution of layer 3 attacks by targeted industry. ### Parameters - `query: SummaryIndustryParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `SummaryIndustryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.summary.industry(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "Computer Software": "65" } }, "success": true } ``` ## Get layer 3 attacks by targeted vertical summary `client.radar.attacks.layer3.summary.vertical(SummaryVerticalParamsquery?, RequestOptionsoptions?): SummaryVerticalResponse` **get** `/radar/attacks/layer3/summary/vertical` Retrieves the distribution of layer 3 attacks by targeted vertical. ### Parameters - `query: SummaryVerticalParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `SummaryVerticalResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.summary.vertical(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "Internet and Telecom": "5.519081" } }, "success": true } ``` ## Domain Types ### Summary Bitrate Response - `SummaryBitrateResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `_1_GBPS_TO_10_GBPS: string` A numeric string. - `_10_GBPS_TO_100_GBPS: string` A numeric string. - `_500_MBPS_TO_1_GBPS: string` A numeric string. - `OVER_100_GBPS: string` A numeric string. - `UNDER_500_MBPS: string` A numeric string. ### Summary Duration Response - `SummaryDurationResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `_1_HOUR_TO_3_HOURS: string` A numeric string. - `_10_MINS_TO_20_MINS: string` A numeric string. - `_20_MINS_TO_40_MINS: string` A numeric string. - `_40_MINS_TO_1_HOUR: string` A numeric string. - `OVER_3_HOURS: string` A numeric string. - `UNDER_10_MINS: string` A numeric string. ### Summary IP Version Response - `SummaryIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `IPv4: string` A numeric string. - `IPv6: string` A numeric string. ### Summary Protocol Response - `SummaryProtocolResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `GRE: string` A numeric string. - `ICMP: string` A numeric string. - `TCP: string` A numeric string. - `UDP: string` A numeric string. ### Summary Vector Response - `SummaryVectorResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Summary Industry Response - `SummaryIndustryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Summary Vertical Response - `SummaryVerticalResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` # Timeseries Groups ## Get layer 3 attacks by target industries time series `client.radar.attacks.layer3.timeseriesGroups.industry(TimeseriesGroupIndustryParamsquery?, RequestOptionsoptions?): TimeseriesGroupIndustryResponse` **get** `/radar/attacks/layer3/timeseries_groups/industry` Retrieves the distribution of layer 3 attacks by targeted industry over time. ### Parameters - `query: TimeseriesGroupIndustryParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `TimeseriesGroupIndustryResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.timeseriesGroups.industry(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get layer 3 attacks by IP version time series `client.radar.attacks.layer3.timeseriesGroups.ipVersion(TimeseriesGroupIPVersionParamsquery?, RequestOptionsoptions?): TimeseriesGroupIPVersionResponse` **get** `/radar/attacks/layer3/timeseries_groups/ip_version` Retrieves the distribution of layer 3 attacks by IP version over time. ### Parameters - `query: TimeseriesGroupIPVersionParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `TimeseriesGroupIPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `IPv4: Array` - `IPv6: Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.timeseriesGroups.ipVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "IPv4": [ "10" ], "IPv6": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get layer 3 attacks by protocol time series `client.radar.attacks.layer3.timeseriesGroups.protocol(TimeseriesGroupProtocolParamsquery?, RequestOptionsoptions?): TimeseriesGroupProtocolResponse` **get** `/radar/attacks/layer3/timeseries_groups/protocol` Retrieves the distribution of layer 3 attacks by protocol over time. ### Parameters - `query: TimeseriesGroupProtocolParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` ### Returns - `TimeseriesGroupProtocolResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `GRE: Array` - `ICMP: Array` - `TCP: Array` - `timestamps: Array` - `UDP: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.timeseriesGroups.protocol(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "GRE": [ "10" ], "ICMP": [ "10" ], "TCP": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ], "UDP": [ "10" ] } }, "success": true } ``` ## Get layer 3 attacks by vector time series `client.radar.attacks.layer3.timeseriesGroups.vector(TimeseriesGroupVectorParamsquery?, RequestOptionsoptions?): TimeseriesGroupVectorResponse` **get** `/radar/attacks/layer3/timeseries_groups/vector` Retrieves the distribution of layer 3 attacks by vector over time. ### Parameters - `query: TimeseriesGroupVectorParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `TimeseriesGroupVectorResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.timeseriesGroups.vector(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get layer 3 attacks by vertical time series `client.radar.attacks.layer3.timeseriesGroups.vertical(TimeseriesGroupVerticalParamsquery?, RequestOptionsoptions?): TimeseriesGroupVerticalResponse` **get** `/radar/attacks/layer3/timeseries_groups/vertical` Retrieves the distribution of layer 3 attacks by targeted vertical over time. ### Parameters - `query: TimeseriesGroupVerticalParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `TimeseriesGroupVerticalResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.timeseriesGroups.vertical(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get layer 3 attacks by bitrate time series `client.radar.attacks.layer3.timeseriesGroups.bitrate(TimeseriesGroupBitrateParamsquery?, RequestOptionsoptions?): TimeseriesGroupBitrateResponse` **get** `/radar/attacks/layer3/timeseries_groups/bitrate` Retrieves the distribution of layer 3 attacks by bitrate over time. ### Parameters - `query: TimeseriesGroupBitrateParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `TimeseriesGroupBitrateResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `_1_GBPS_TO_10_GBPS: Array` - `_10_GBPS_TO_100_GBPS: Array` - `_500_MBPS_TO_1_GBPS: Array` - `OVER_100_GBPS: Array` - `timestamps: Array` - `UNDER_500_MBPS: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.timeseriesGroups.bitrate(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "_1_GBPS_TO_10_GBPS": [ "10" ], "_10_GBPS_TO_100_GBPS": [ "10" ], "_500_MBPS_TO_1_GBPS": [ "10" ], "OVER_100_GBPS": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ], "UNDER_500_MBPS": [ "10" ] } }, "success": true } ``` ## Get layer 3 attacks by duration time series `client.radar.attacks.layer3.timeseriesGroups.duration(TimeseriesGroupDurationParamsquery?, RequestOptionsoptions?): TimeseriesGroupDurationResponse` **get** `/radar/attacks/layer3/timeseries_groups/duration` Retrieves the distribution of layer 3 attacks by duration over time. ### Parameters - `query: TimeseriesGroupDurationParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `direction?: "ORIGIN" | "TARGET"` Specifies whether the `location` filter applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `TimeseriesGroupDurationResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `_1_HOUR_TO_3_HOURS: Array` - `_10_MINS_TO_20_MINS: Array` - `_20_MINS_TO_40_MINS: Array` - `_40_MINS_TO_1_HOUR: Array` - `OVER_3_HOURS: Array` - `timestamps: Array` - `UNDER_10_MINS: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.timeseriesGroups.duration(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "_1_HOUR_TO_3_HOURS": [ "10" ], "_10_MINS_TO_20_MINS": [ "10" ], "_20_MINS_TO_40_MINS": [ "10" ], "_40_MINS_TO_1_HOUR": [ "10" ], "OVER_3_HOURS": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ], "UNDER_10_MINS": [ "10" ] } }, "success": true } ``` ## Domain Types ### Timeseries Group Industry Response - `TimeseriesGroupIndustryResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group IP Version Response - `TimeseriesGroupIPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `IPv4: Array` - `IPv6: Array` - `timestamps: Array` ### Timeseries Group Protocol Response - `TimeseriesGroupProtocolResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `GRE: Array` - `ICMP: Array` - `TCP: Array` - `timestamps: Array` - `UDP: Array` ### Timeseries Group Vector Response - `TimeseriesGroupVectorResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group Vertical Response - `TimeseriesGroupVerticalResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group Bitrate Response - `TimeseriesGroupBitrateResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `_1_GBPS_TO_10_GBPS: Array` - `_10_GBPS_TO_100_GBPS: Array` - `_500_MBPS_TO_1_GBPS: Array` - `OVER_100_GBPS: Array` - `timestamps: Array` - `UNDER_500_MBPS: Array` ### Timeseries Group Duration Response - `TimeseriesGroupDurationResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `_1_HOUR_TO_3_HOURS: Array` - `_10_MINS_TO_20_MINS: Array` - `_20_MINS_TO_40_MINS: Array` - `_40_MINS_TO_1_HOUR: Array` - `OVER_3_HOURS: Array` - `timestamps: Array` - `UNDER_10_MINS: Array` # Top ## Get top layer 3 attack pairs (origin and target locations) `client.radar.attacks.layer3.top.attacks(TopAttacksParamsquery?, RequestOptionsoptions?): TopAttacksResponse` **get** `/radar/attacks/layer3/top/attacks` Retrieves the top layer 3 attacks from origin to target location. Values are a percentage out of the total layer 3 attacks (with billing country). You can optionally limit the number of attacks by origin/target location (useful if all the top attacks are from or to the same location). ### Parameters - `query: TopAttacksParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `limitDirection?: "ORIGIN" | "TARGET"` Specifies whether the `limitPerLocation` applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `limitPerLocation?: number` Limits the number of attacks per origin/target (refer to `limitDirection` parameter) location. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `magnitude?: "MITIGATED_BYTES" | "MITIGATED_ATTACKS"` Orders results based on attack magnitude, defined by total mitigated bytes or total mitigated attacks. - `"MITIGATED_BYTES"` - `"MITIGATED_ATTACKS"` - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN_MAX"` - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `TopAttacksResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `originCountryAlpha2: string` - `originCountryName: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.top.attacks(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "originCountryAlpha2": "FR", "originCountryName": "France", "value": "4.323214" } ] }, "success": true } ``` ## Get top industries targeted by layer 3 attacks `client.radar.attacks.layer3.top.industry(TopIndustryParamsquery?, RequestOptionsoptions?): TopIndustryResponse` **get** `/radar/attacks/layer3/top/industry` This endpoint is deprecated. To continue getting this data, switch to the summary by industry endpoint. ### Parameters - `query: TopIndustryParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `TopIndustryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.top.industry(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "name": "Computer Software", "value": "65" } ] }, "success": true } ``` ## Get top verticals targeted by layer 3 attacks `client.radar.attacks.layer3.top.vertical(TopVerticalParamsquery?, RequestOptionsoptions?): TopVerticalResponse` **get** `/radar/attacks/layer3/top/vertical` This endpoint is deprecated. To continue getting this data, switch to the summary by vertical endpoint. ### Parameters - `query: TopVerticalParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `TopVerticalResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.top.vertical(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "name": "Internet and Telecom", "value": "65" } ] }, "success": true } ``` ## Domain Types ### Top Attacks Response - `TopAttacksResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `originCountryAlpha2: string` - `originCountryName: string` - `value: string` ### Top Industry Response - `TopIndustryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` ### Top Vertical Response - `TopVerticalResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` # Locations ## Get top origin locations of layer 3 attacks `client.radar.attacks.layer3.top.locations.origin(LocationOriginParamsquery?, RequestOptionsoptions?): LocationOriginResponse` **get** `/radar/attacks/layer3/top/locations/origin` Retrieves the origin locations of layer 3 attacks. ### Parameters - `query: LocationOriginParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `LocationOriginResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `originCountryAlpha2: string` - `originCountryName: string` - `rank: number` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.top.locations.origin(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "originCountryAlpha2": "FR", "originCountryName": "France", "rank": 1, "value": "4.323214" } ] }, "success": true } ``` ## Get top target locations of layer 3 attacks `client.radar.attacks.layer3.top.locations.target(LocationTargetParamsquery?, RequestOptionsoptions?): LocationTargetResponse` **get** `/radar/attacks/layer3/top/locations/target` Retrieves the target locations of layer 3 attacks. ### Parameters - `query: LocationTargetParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `protocol?: Array<"UDP" | "TCP" | "ICMP" | "GRE">` Filters the results by layer 3/4 protocol. - `"UDP"` - `"TCP"` - `"ICMP"` - `"GRE"` ### Returns - `LocationTargetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `rank: number` - `targetCountryAlpha2: string` - `targetCountryName: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer3.top.locations.target(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "rank": 1, "targetCountryAlpha2": "FR", "targetCountryName": "France", "value": "4.323214" } ] }, "success": true } ``` ## Domain Types ### Location Origin Response - `LocationOriginResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `originCountryAlpha2: string` - `originCountryName: string` - `rank: number` - `value: string` ### Location Target Response - `LocationTargetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `rank: number` - `targetCountryAlpha2: string` - `targetCountryName: string` - `value: string` # Layer7 ## Get layer 7 attacks summary by dimension `client.radar.attacks.layer7.summaryV2("HTTP_METHOD" | "HTTP_VERSION" | "IP_VERSION" | 4 moredimension, Layer7SummaryV2Paramsquery?, RequestOptionsoptions?): Layer7SummaryV2Response` **get** `/radar/attacks/layer7/summary/{dimension}` Retrieves the distribution of layer 7 attacks by the specified dimension. ### Parameters - `dimension: "HTTP_METHOD" | "HTTP_VERSION" | "IP_VERSION" | 4 more` Specifies the attribute by which to group the results. - `"HTTP_METHOD"` - `"HTTP_VERSION"` - `"IP_VERSION"` - `"MANAGED_RULES"` - `"MITIGATION_PRODUCT"` - `"VERTICAL"` - `"INDUSTRY"` - `query: Layer7SummaryV2Params` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `Layer7SummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.summaryV2('HTTP_METHOD'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "GET": "50.168733", "POST": "25.084366" } }, "success": true } ``` ## Get layer 7 attacks time series `client.radar.attacks.layer7.timeseries(Layer7TimeseriesParamsquery?, RequestOptionsoptions?): Layer7TimeseriesResponse` **get** `/radar/attacks/layer7/timeseries` Retrieves layer 7 attacks over time. ### Parameters - `query: Layer7TimeseriesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE_CHANGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE_CHANGE"` - `"MIN0_MAX"` ### Returns - `Layer7TimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` - `values: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2019-12-27T18:11:19.117Z" ], "values": [ "10" ] } }, "success": true } ``` ## Get layer 7 attacks time series grouped by dimension `client.radar.attacks.layer7.timeseriesGroupsV2("HTTP_METHOD" | "HTTP_VERSION" | "IP_VERSION" | 4 moredimension, Layer7TimeseriesGroupsV2Paramsquery?, RequestOptionsoptions?): Layer7TimeseriesGroupsV2Response` **get** `/radar/attacks/layer7/timeseries_groups/{dimension}` Retrieves the distribution of layer 7 attacks grouped by dimension over time. ### Parameters - `dimension: "HTTP_METHOD" | "HTTP_VERSION" | "IP_VERSION" | 4 more` Specifies the attribute by which to group the results. - `"HTTP_METHOD"` - `"HTTP_VERSION"` - `"IP_VERSION"` - `"MANAGED_RULES"` - `"MITIGATION_PRODUCT"` - `"VERTICAL"` - `"INDUSTRY"` - `query: Layer7TimeseriesGroupsV2Params` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` ### Returns - `Layer7TimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.timeseriesGroupsV2('HTTP_METHOD'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Layer7 Summary V2 Response - `Layer7SummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Layer7 Timeseries Response - `Layer7TimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` - `values: Array` ### Layer7 Timeseries Groups V2 Response - `Layer7TimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Summary ## Get layer 7 attacks by IP version summary `client.radar.attacks.layer7.summary.ipVersion(SummaryIPVersionParamsquery?, RequestOptionsoptions?): SummaryIPVersionResponse` **get** `/radar/attacks/layer7/summary/ip_version` Retrieves the distribution of layer 7 attacks by IP version. ### Parameters - `query: SummaryIPVersionParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `IPv4: string` - `IPv6: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.summary.ipVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "IPv4": "99.935733", "IPv6": "0.064267" } }, "success": true } ``` ## Get layer 7 attacks by HTTP method summary `client.radar.attacks.layer7.summary.httpMethod(SummaryHTTPMethodParamsquery?, RequestOptionsoptions?): SummaryHTTPMethodResponse` **get** `/radar/attacks/layer7/summary/http_method` Retrieves the distribution of layer 7 attacks by HTTP method. ### Parameters - `query: SummaryHTTPMethodParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryHTTPMethodResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.summary.httpMethod(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "GET": "99.100257", "POST": "0.899743" } }, "success": true } ``` ## Get layer 7 attacks by HTTP version summary `client.radar.attacks.layer7.summary.httpVersion(SummaryHTTPVersionParamsquery?, RequestOptionsoptions?): SummaryHTTPVersionResponse` **get** `/radar/attacks/layer7/summary/http_version` Retrieves the distribution of layer 7 attacks by HTTP version. ### Parameters - `query: SummaryHTTPVersionParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryHTTPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `"HTTP/1.x": string` - `"HTTP/2": string` - `"HTTP/3": string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.summary.httpVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "HTTP/1.x": "21.722365", "HTTP/2": "77.056555", "HTTP/3": "1.22108" } }, "success": true } ``` ## Get layer 7 attacks by managed rules summary `client.radar.attacks.layer7.summary.managedRules(SummaryManagedRulesParamsquery?, RequestOptionsoptions?): SummaryManagedRulesResponse` **get** `/radar/attacks/layer7/summary/managed_rules` Retrieves the distribution of layer 7 attacks by managed rules. ### Parameters - `query: SummaryManagedRulesParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryManagedRulesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.summary.managedRules(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "HTTP Anomaly": "85.714286", "XSS": "10.274394" } }, "success": true } ``` ## Get layer 7 attacks by mitigation product summary `client.radar.attacks.layer7.summary.mitigationProduct(SummaryMitigationProductParamsquery?, RequestOptionsoptions?): SummaryMitigationProductResponse` **get** `/radar/attacks/layer7/summary/mitigation_product` Retrieves the distribution of layer 7 attacks by mitigation product. ### Parameters - `query: SummaryMitigationProductParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryMitigationProductResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.summary.mitigationProduct(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "DDOS": "24.421594", "WAF": "53.213368" } }, "success": true } ``` ## Get layer 7 attacks by targeted industry summary `client.radar.attacks.layer7.summary.industry(SummaryIndustryParamsquery?, RequestOptionsoptions?): SummaryIndustryResponse` **get** `/radar/attacks/layer7/summary/industry` Retrieves the distribution of layer 7 attacks by targeted industry. ### Parameters - `query: SummaryIndustryParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryIndustryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.summary.industry(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "Computer Software": "65" } }, "success": true } ``` ## Get layer 7 attacks by targeted vertical summary `client.radar.attacks.layer7.summary.vertical(SummaryVerticalParamsquery?, RequestOptionsoptions?): SummaryVerticalResponse` **get** `/radar/attacks/layer7/summary/vertical` Retrieves the distribution of layer 7 attacks by targeted vertical. ### Parameters - `query: SummaryVerticalParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryVerticalResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.summary.vertical(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "Internet and Telecom": "5.519081" } }, "success": true } ``` ## Domain Types ### Summary IP Version Response - `SummaryIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `IPv4: string` - `IPv6: string` ### Summary HTTP Method Response - `SummaryHTTPMethodResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Summary HTTP Version Response - `SummaryHTTPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `"HTTP/1.x": string` - `"HTTP/2": string` - `"HTTP/3": string` ### Summary Managed Rules Response - `SummaryManagedRulesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Summary Mitigation Product Response - `SummaryMitigationProductResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Summary Industry Response - `SummaryIndustryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Summary Vertical Response - `SummaryVerticalResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` # Timeseries Groups ## Get layer 7 attacks by target industries time series `client.radar.attacks.layer7.timeseriesGroups.industry(TimeseriesGroupIndustryParamsquery?, RequestOptionsoptions?): TimeseriesGroupIndustryResponse` **get** `/radar/attacks/layer7/timeseries_groups/industry` Retrieves the distribution of layer 7 attacks by targeted industry over time. ### Parameters - `query: TimeseriesGroupIndustryParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` ### Returns - `TimeseriesGroupIndustryResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.timeseriesGroups.industry(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get layer 7 attacks by IP version time series `client.radar.attacks.layer7.timeseriesGroups.ipVersion(TimeseriesGroupIPVersionParamsquery?, RequestOptionsoptions?): TimeseriesGroupIPVersionResponse` **get** `/radar/attacks/layer7/timeseries_groups/ip_version` Retrieves the distribution of layer 7 attacks by IP version used over time. ### Parameters - `query: TimeseriesGroupIPVersionParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` ### Returns - `TimeseriesGroupIPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `IPv4: Array` - `IPv6: Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.timeseriesGroups.ipVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "IPv4": [ "10" ], "IPv6": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get layer 7 attacks by vertical time series `client.radar.attacks.layer7.timeseriesGroups.vertical(TimeseriesGroupVerticalParamsquery?, RequestOptionsoptions?): TimeseriesGroupVerticalResponse` **get** `/radar/attacks/layer7/timeseries_groups/vertical` Retrieves the distribution of layer 7 attacks by targeted vertical over time. ### Parameters - `query: TimeseriesGroupVerticalParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` ### Returns - `TimeseriesGroupVerticalResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.timeseriesGroups.vertical(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get layer 7 attacks by HTTP method time series `client.radar.attacks.layer7.timeseriesGroups.httpMethod(TimeseriesGroupHTTPMethodParamsquery?, RequestOptionsoptions?): TimeseriesGroupHTTPMethodResponse` **get** `/radar/attacks/layer7/timeseries_groups/http_method` Retrieves the distribution of layer 7 attacks by HTTP method over time. ### Parameters - `query: TimeseriesGroupHTTPMethodParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` ### Returns - `TimeseriesGroupHTTPMethodResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.timeseriesGroups.httpMethod(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get layer 7 attacks by HTTP version time series `client.radar.attacks.layer7.timeseriesGroups.httpVersion(TimeseriesGroupHTTPVersionParamsquery?, RequestOptionsoptions?): TimeseriesGroupHTTPVersionResponse` **get** `/radar/attacks/layer7/timeseries_groups/http_version` Retrieves the distribution of layer 7 attacks by HTTP version over time. ### Parameters - `query: TimeseriesGroupHTTPVersionParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` ### Returns - `TimeseriesGroupHTTPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `"HTTP/1.x": Array` - `"HTTP/2": Array` - `"HTTP/3": Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.timeseriesGroups.httpVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "HTTP/1.x": [ "50.338734" ], "HTTP/2": [ "48.661266" ], "HTTP/3": [ "1.22108" ], "timestamps": [ "2023-10-01T00:00:00Z" ] } }, "success": true } ``` ## Get layer 7 attacks by managed rules time series `client.radar.attacks.layer7.timeseriesGroups.managedRules(TimeseriesGroupManagedRulesParamsquery?, RequestOptionsoptions?): TimeseriesGroupManagedRulesResponse` **get** `/radar/attacks/layer7/timeseries_groups/managed_rules` Retrieves the distribution of layer 7 attacks by managed rules over time. ### Parameters - `query: TimeseriesGroupManagedRulesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` ### Returns - `TimeseriesGroupManagedRulesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.timeseriesGroups.managedRules(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get layer 7 attacks by mitigation product time series `client.radar.attacks.layer7.timeseriesGroups.mitigationProduct(TimeseriesGroupMitigationProductParamsquery?, RequestOptionsoptions?): TimeseriesGroupMitigationProductResponse` **get** `/radar/attacks/layer7/timeseries_groups/mitigation_product` Retrieves the distribution of layer 7 attacks by mitigation product over time. ### Parameters - `query: TimeseriesGroupMitigationProductParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` ### Returns - `TimeseriesGroupMitigationProductResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.timeseriesGroups.mitigationProduct(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Timeseries Group Industry Response - `TimeseriesGroupIndustryResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group IP Version Response - `TimeseriesGroupIPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `IPv4: Array` - `IPv6: Array` - `timestamps: Array` ### Timeseries Group Vertical Response - `TimeseriesGroupVerticalResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group HTTP Method Response - `TimeseriesGroupHTTPMethodResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group HTTP Version Response - `TimeseriesGroupHTTPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `"HTTP/1.x": Array` - `"HTTP/2": Array` - `"HTTP/3": Array` - `timestamps: Array` ### Timeseries Group Managed Rules Response - `TimeseriesGroupManagedRulesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group Mitigation Product Response - `TimeseriesGroupMitigationProductResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Top ## Get top layer 7 attack pairs (origin and target locations) `client.radar.attacks.layer7.top.attacks(TopAttacksParamsquery?, RequestOptionsoptions?): TopAttacksResponse` **get** `/radar/attacks/layer7/top/attacks` Retrieves the top attacks from origin to target location. Values are percentages of the total layer 7 attacks (with billing country). The attack magnitude can be defined by the number of mitigated requests or by the number of zones affected. You can optionally limit the number of attacks by origin/target location (useful if all the top attacks are from or to the same location). ### Parameters - `query: TopAttacksParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `limitDirection?: "ORIGIN" | "TARGET"` Specifies whether the `limitPerLocation` applies to the source or target location. - `"ORIGIN"` - `"TARGET"` - `limitPerLocation?: number` Limits the number of attacks per origin/target (refer to `limitDirection` parameter) location. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN_MAX"` ### Returns - `TopAttacksResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `originCountryAlpha2: string` - `originCountryName: string` - `targetCountryAlpha2: string` - `targetCountryName: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.top.attacks(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "originCountryAlpha2": "US", "originCountryName": "United States", "targetCountryAlpha2": "FR", "targetCountryName": "France", "value": "4.323214" } ] }, "success": true } ``` ## Get top industries targeted by layer 7 attacks `client.radar.attacks.layer7.top.industry(TopIndustryParamsquery?, RequestOptionsoptions?): TopIndustryResponse` **get** `/radar/attacks/layer7/top/industry` This endpoint is deprecated. To continue getting this data, switch to the summary by industry endpoint. ### Parameters - `query: TopIndustryParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `TopIndustryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.top.industry(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "name": "Computer Software", "value": "65" } ] }, "success": true } ``` ## Get top verticals targeted by layer 7 attacks `client.radar.attacks.layer7.top.vertical(TopVerticalParamsquery?, RequestOptionsoptions?): TopVerticalResponse` **get** `/radar/attacks/layer7/top/vertical` This endpoint is deprecated. To continue getting this data, switch to the summary by vertical endpoint. ### Parameters - `query: TopVerticalParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `TopVerticalResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.top.vertical(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "name": "Internet and Telecom", "value": "65" } ] }, "success": true } ``` ## Domain Types ### Top Attacks Response - `TopAttacksResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `originCountryAlpha2: string` - `originCountryName: string` - `targetCountryAlpha2: string` - `targetCountryName: string` - `value: string` ### Top Industry Response - `TopIndustryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` ### Top Vertical Response - `TopVerticalResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` # Locations ## Get top origin locations of layer 7 attacks `client.radar.attacks.layer7.top.locations.origin(LocationOriginParamsquery?, RequestOptionsoptions?): LocationOriginResponse` **get** `/radar/attacks/layer7/top/locations/origin` Retrieves the top origin locations of layer 7 attacks. Values are percentages of the total layer 7 attacks, with the origin location determined by the client IP address. ### Parameters - `query: LocationOriginParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `LocationOriginResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `originCountryAlpha2: string` - `originCountryName: string` - `rank: number` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.top.locations.origin(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "originCountryAlpha2": "FR", "originCountryName": "France", "rank": 1, "value": "4.323214" } ] }, "success": true } ``` ## Get top target locations of layer 7 attacks `client.radar.attacks.layer7.top.locations.target(LocationTargetParamsquery?, RequestOptionsoptions?): LocationTargetResponse` **get** `/radar/attacks/layer7/top/locations/target` Retrieves the top target locations of and by layer 7 attacks. Values are a percentage out of the total layer 7 attacks. The target location is determined by the attacked zone's billing country, when available. ### Parameters - `query: LocationTargetParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `LocationTargetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `rank: number` - `targetCountryAlpha2: string` - `targetCountryName: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.top.locations.target(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "rank": 1, "targetCountryAlpha2": "FR", "targetCountryName": "France", "value": "4.323214" } ] }, "success": true } ``` ## Domain Types ### Location Origin Response - `LocationOriginResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `originCountryAlpha2: string` - `originCountryName: string` - `rank: number` - `value: string` ### Location Target Response - `LocationTargetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `rank: number` - `targetCountryAlpha2: string` - `targetCountryName: string` - `value: string` # Ases ## Get top origin ASes of layer 7 attacks `client.radar.attacks.layer7.top.ases.origin(AseOriginParamsquery?, RequestOptionsoptions?): AseOriginResponse` **get** `/radar/attacks/layer7/top/ases/origin` Retrieves the top origin autonomous systems of layer 7 attacks. Values are percentages of the total layer 7 attacks, with the origin autonomous systems determined by the client IP address. ### Parameters - `query: AseOriginParams` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `httpMethod?: Array<"GET" | "POST" | "DELETE" | 43 more>` Filters results by HTTP method. - `"GET"` - `"POST"` - `"DELETE"` - `"PUT"` - `"HEAD"` - `"PURGE"` - `"OPTIONS"` - `"PROPFIND"` - `"MKCOL"` - `"PATCH"` - `"ACL"` - `"BCOPY"` - `"BDELETE"` - `"BMOVE"` - `"BPROPFIND"` - `"BPROPPATCH"` - `"CHECKIN"` - `"CHECKOUT"` - `"CONNECT"` - `"COPY"` - `"LABEL"` - `"LOCK"` - `"MERGE"` - `"MKACTIVITY"` - `"MKWORKSPACE"` - `"MOVE"` - `"NOTIFY"` - `"ORDERPATCH"` - `"POLL"` - `"PROPPATCH"` - `"REPORT"` - `"SEARCH"` - `"SUBSCRIBE"` - `"TRACE"` - `"UNCHECKOUT"` - `"UNLOCK"` - `"UNSUBSCRIBE"` - `"UPDATE"` - `"VERSIONCONTROL"` - `"BASELINECONTROL"` - `"XMSENUMATTS"` - `"RPC_OUT_DATA"` - `"RPC_IN_DATA"` - `"JSON"` - `"COOK"` - `"TRACK"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `mitigationProduct?: Array<"DDOS" | "WAF" | "BOT_MANAGEMENT" | 4 more>` Filters the results by layer 7 mitigation product. - `"DDOS"` - `"WAF"` - `"BOT_MANAGEMENT"` - `"ACCESS_RULES"` - `"IP_REPUTATION"` - `"API_SHIELD"` - `"DATA_LOSS_PREVENTION"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `AseOriginResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `originAsn: string` - `originAsnName: string` - `rank: number` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.attacks.layer7.top.ases.origin(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "originAsn": "55836", "originAsnName": "RELIANCEJIO-IN Reliance Jio Infocomm Limited", "rank": 1, "value": "4.323214" } ] }, "success": true } ``` ## Domain Types ### Ase Origin Response - `AseOriginResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `originAsn: string` - `originAsnName: string` - `rank: number` - `value: string` # Entities ## Get IP address details `client.radar.entities.get(EntityGetParamsquery, RequestOptionsoptions?): EntityGetResponse` **get** `/radar/entities/ip` Retrieves IP address information. ### Parameters - `query: EntityGetParams` - `ip: string` IP address. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` ### Returns - `EntityGetResponse` - `ip: IP` - `asn: string` - `asnLocation: string` - `asnName: string` - `asnOrgName: string` - `ip: string` - `ipVersion: string` - `location: string` - `locationName: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const entity = await client.radar.entities.get({ ip: '8.8.8.8' }); console.log(entity.ip); ``` #### Response ```json { "result": { "ip": { "asn": "15169", "asnLocation": "US", "asnName": "GOOGLE", "asnOrgName": "Google LLC", "ip": "8.8.8.8", "ipVersion": "IPv4", "location": "GB", "locationName": "United Kingdom" } }, "success": true } ``` ## Domain Types ### Entity Get Response - `EntityGetResponse` - `ip: IP` - `asn: string` - `asnLocation: string` - `asnName: string` - `asnOrgName: string` - `ip: string` - `ipVersion: string` - `location: string` - `locationName: string` # ASNs ## List autonomous systems `client.radar.entities.asns.list(ASNListParamsquery?, RequestOptionsoptions?): ASNListResponse` **get** `/radar/entities/asns` Retrieves a list of autonomous systems. ### Parameters - `query: ASNListParams` - `asn?: string` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: string` Filters results by location. Specify an alpha-2 location code. - `offset?: number` Skips the specified number of objects before fetching the results. - `orderBy?: "ASN" | "POPULATION"` Specifies the metric to order the ASNs by. - `"ASN"` - `"POPULATION"` ### Returns - `ASNListResponse` - `asns: Array` - `asn: number` - `country: string` - `countryName: string` - `name: string` - `aka?: string` - `orgName?: string` - `website?: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const asns = await client.radar.entities.asns.list(); console.log(asns.asns); ``` #### Response ```json { "result": { "asns": [ { "asn": 714, "country": "GB", "countryName": "United Kingdom", "name": "Apple Inc.", "aka": "aka", "orgName": "orgName", "website": "https://www.apple.com/support/systemstatus/" } ] }, "success": true } ``` ## Get AS details by ASN `client.radar.entities.asns.get(numberasn, ASNGetParamsquery?, RequestOptionsoptions?): ASNGetResponse` **get** `/radar/entities/asns/{asn}` Retrieves the requested autonomous system information. (A confidence level below `5` indicates a low level of confidence in the traffic data - normally this happens because Cloudflare has a small amount of traffic from/to this AS). Population estimates come from APNIC (refer to https://labs.apnic.net/?p=526). ### Parameters - `asn: number` Single Autonomous System Number (ASN) as integer. - `query: ASNGetParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` ### Returns - `ASNGetResponse` - `asn: ASN` - `asn: number` - `confidenceLevel: number` - `country: string` - `countryName: string` - `estimatedUsers: EstimatedUsers` - `locations: Array` - `locationAlpha2: string` - `locationName: string` - `estimatedUsers?: number` Estimated users per location. - `estimatedUsers?: number` Total estimated users. - `name: string` - `orgName: string` - `related: Array` - `asn: number` - `name: string` - `aka?: string` - `estimatedUsers?: number` Total estimated users. - `source: string` Regional Internet Registry. - `website: string` - `aka?: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const asn = await client.radar.entities.asns.get(174); console.log(asn.asn); ``` #### Response ```json { "result": { "asn": { "asn": 714, "confidenceLevel": 5, "country": "GB", "countryName": "United Kingdom", "estimatedUsers": { "locations": [ { "locationAlpha2": "US", "locationName": "United States", "estimatedUsers": 16710 } ], "estimatedUsers": 86099 }, "name": "Apple Inc.", "orgName": "orgName", "related": [ { "asn": 174, "name": "Cogent-174", "aka": "aka", "estimatedUsers": 65345 } ], "source": "RIPE", "website": "https://www.apple.com/support/systemstatus/", "aka": "aka" } }, "success": true } ``` ## Get AS-level relationships by ASN `client.radar.entities.asns.rel(numberasn, ASNRelParamsquery?, RequestOptionsoptions?): ASNRelResponse` **get** `/radar/entities/asns/{asn}/rel` Retrieves AS-level relationship for given networks. ### Parameters - `asn: number` Retrieves all ASNs with provider-customer or peering relationships with the given ASN. - `query: ASNRelParams` - `asn2?: number` Retrieves the AS relationship of ASN2 with respect to the given ASN. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` ### Returns - `ASNRelResponse` - `meta: Meta` - `data_time: string` - `query_time: string` - `total_peers: number` - `rels: Array` - `asn1: number` - `asn1_country: string` - `asn1_name: string` - `asn2: number` - `asn2_country: string` - `asn2_name: string` - `rel: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.entities.asns.rel(3); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "data_time": "data_time", "query_time": "query_time", "total_peers": 0 }, "rels": [ { "asn1": 0, "asn1_country": "asn1_country", "asn1_name": "asn1_name", "asn2": 0, "asn2_country": "asn2_country", "asn2_name": "asn2_name", "rel": "rel" } ] }, "success": true } ``` ## Get IRR AS-SETs that an AS is a member of `client.radar.entities.asns.asSet(numberasn, ASNAsSetParamsquery?, RequestOptionsoptions?): ASNAsSetResponse` **get** `/radar/entities/asns/{asn}/as_set` Retrieves Internet Routing Registry AS-SETs that an AS is a member of. ### Parameters - `asn: number` Retrieves all AS-SETs that the given AS is a member of. - `query: ASNAsSetParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` ### Returns - `ASNAsSetResponse` - `as_sets: Array` - `as_members_count: number` The number of AS members in the AS-SET - `as_set_members_count: number` The number of AS-SET members in the AS-SET - `as_set_upstreams_count: number` The number of recursive upstream AS-SETs - `asn_cone_size: number` The number of unique ASNs in the AS-SETs recursive downstream - `irr_sources: Array` The IRR sources of the AS-SET - `name: string` The name of the AS-SET - `hierarchical_asn?: number` The AS number following hierarchical AS-SET name - `inferred_asn?: number` The inferred AS number of the AS-SET - `peeringdb_asn?: number` The AS number matching PeeringDB record - `paths: Array>` Paths from the AS-SET that include the given AS to its upstreams recursively ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.entities.asns.asSet(3); console.log(response.as_sets); ``` #### Response ```json { "result": { "as_sets": [ { "as_members_count": 0, "as_set_members_count": 0, "as_set_upstreams_count": 0, "asn_cone_size": 0, "irr_sources": [ "string" ], "name": "name", "hierarchical_asn": 0, "inferred_asn": 0, "peeringdb_asn": 0 } ], "paths": [ [ "string" ] ] }, "success": true } ``` ## Get AS details by IP address `client.radar.entities.asns.ip(ASNIPParamsquery, RequestOptionsoptions?): ASNIPResponse` **get** `/radar/entities/asns/ip` Retrieves the requested autonomous system information based on IP address. Population estimates come from APNIC (refer to https://labs.apnic.net/?p=526). ### Parameters - `query: ASNIPParams` - `ip: string` IP address. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` ### Returns - `ASNIPResponse` - `asn: ASN` - `asn: number` - `country: string` - `countryName: string` - `estimatedUsers: EstimatedUsers` - `locations: Array` - `locationAlpha2: string` - `locationName: string` - `estimatedUsers?: number` Estimated users per location. - `estimatedUsers?: number` Total estimated users. - `name: string` - `orgName: string` - `related: Array` - `asn: number` - `name: string` - `aka?: string` - `estimatedUsers?: number` Total estimated users. - `source: string` Regional Internet Registry. - `website: string` - `aka?: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.entities.asns.ip({ ip: '8.8.8.8' }); console.log(response.asn); ``` #### Response ```json { "result": { "asn": { "asn": 714, "country": "GB", "countryName": "United Kingdom", "estimatedUsers": { "locations": [ { "locationAlpha2": "US", "locationName": "United States", "estimatedUsers": 16710 } ], "estimatedUsers": 86099 }, "name": "Apple Inc.", "orgName": "orgName", "related": [ { "asn": 0, "name": "name", "aka": "aka", "estimatedUsers": 65345 } ], "source": "RIPE", "website": "https://www.apple.com/support/systemstatus/", "aka": "aka" } }, "success": true } ``` ## Get AS rankings by botnet threat feed activity `client.radar.entities.asns.botnetThreatFeed(ASNBotnetThreatFeedParamsquery?, RequestOptionsoptions?): ASNBotnetThreatFeedResponse` **get** `/radar/entities/asns/botnet_threat_feed` Retrieves a ranked list of Autonomous Systems based on their presence in the Cloudflare Botnet Threat Feed. Rankings can be sorted by offense count or number of bad IPs. Optionally compare to a previous date to see rank changes. ### Parameters - `query: ASNBotnetThreatFeedParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `compareDateRange?: string` Relative date range for rank change comparison (e.g., "1d", "7d", "30d"). - `date?: string` The date to retrieve (YYYY-MM-DD format). If not specified, returns the most recent available data. Note: This is the date the report was generated. The report is generated from information collected from the previous day (e.g., the 2026-02-23 entry contains data from 2026-02-22). - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: string` Filters results by location. Specify an alpha-2 location code. - `metric?: "OFFENSE_COUNT" | "NUMBER_OF_OFFENDING_IPS"` Metric to rank ASNs by. - `"OFFENSE_COUNT"` - `"NUMBER_OF_OFFENDING_IPS"` - `offset?: number` Skips the specified number of objects before fetching the results. - `sortOrder?: "ASC" | "DESC"` Sort order. - `"ASC"` - `"DESC"` ### Returns - `ASNBotnetThreatFeedResponse` - `ases: Array` - `asn: number` - `country: string` - `name: string` - `rank: number` - `rankChange?: number` - `meta: Meta` - `date: string` - `total: number` - `compareDate?: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.entities.asns.botnetThreatFeed(); console.log(response.ases); ``` #### Response ```json { "result": { "ases": [ { "asn": 4134, "country": "CN", "name": "CHINANET-BACKBONE", "rank": 1, "rankChange": -2 } ], "meta": { "date": "2026-02-04", "total": 50, "compareDate": "2026-01-28" } }, "success": true } ``` ## Domain Types ### ASN List Response - `ASNListResponse` - `asns: Array` - `asn: number` - `country: string` - `countryName: string` - `name: string` - `aka?: string` - `orgName?: string` - `website?: string` ### ASN Get Response - `ASNGetResponse` - `asn: ASN` - `asn: number` - `confidenceLevel: number` - `country: string` - `countryName: string` - `estimatedUsers: EstimatedUsers` - `locations: Array` - `locationAlpha2: string` - `locationName: string` - `estimatedUsers?: number` Estimated users per location. - `estimatedUsers?: number` Total estimated users. - `name: string` - `orgName: string` - `related: Array` - `asn: number` - `name: string` - `aka?: string` - `estimatedUsers?: number` Total estimated users. - `source: string` Regional Internet Registry. - `website: string` - `aka?: string` ### ASN Rel Response - `ASNRelResponse` - `meta: Meta` - `data_time: string` - `query_time: string` - `total_peers: number` - `rels: Array` - `asn1: number` - `asn1_country: string` - `asn1_name: string` - `asn2: number` - `asn2_country: string` - `asn2_name: string` - `rel: string` ### ASN As Set Response - `ASNAsSetResponse` - `as_sets: Array` - `as_members_count: number` The number of AS members in the AS-SET - `as_set_members_count: number` The number of AS-SET members in the AS-SET - `as_set_upstreams_count: number` The number of recursive upstream AS-SETs - `asn_cone_size: number` The number of unique ASNs in the AS-SETs recursive downstream - `irr_sources: Array` The IRR sources of the AS-SET - `name: string` The name of the AS-SET - `hierarchical_asn?: number` The AS number following hierarchical AS-SET name - `inferred_asn?: number` The inferred AS number of the AS-SET - `peeringdb_asn?: number` The AS number matching PeeringDB record - `paths: Array>` Paths from the AS-SET that include the given AS to its upstreams recursively ### ASN IP Response - `ASNIPResponse` - `asn: ASN` - `asn: number` - `country: string` - `countryName: string` - `estimatedUsers: EstimatedUsers` - `locations: Array` - `locationAlpha2: string` - `locationName: string` - `estimatedUsers?: number` Estimated users per location. - `estimatedUsers?: number` Total estimated users. - `name: string` - `orgName: string` - `related: Array` - `asn: number` - `name: string` - `aka?: string` - `estimatedUsers?: number` Total estimated users. - `source: string` Regional Internet Registry. - `website: string` - `aka?: string` ### ASN Botnet Threat Feed Response - `ASNBotnetThreatFeedResponse` - `ases: Array` - `asn: number` - `country: string` - `name: string` - `rank: number` - `rankChange?: number` - `meta: Meta` - `date: string` - `total: number` - `compareDate?: string` # Locations ## List locations `client.radar.entities.locations.list(LocationListParamsquery?, RequestOptionsoptions?): LocationListResponse` **get** `/radar/entities/locations` Retrieves a list of locations. ### Parameters - `query: LocationListParams` - `continent?: "AF" | "AS" | "EU" | 3 more` Filters results by continent code. - `"AF"` - `"AS"` - `"EU"` - `"NA"` - `"OC"` - `"SA"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: string` Filters results by location. Specify a comma-separated list of alpha-2 location codes. - `offset?: number` Skips the specified number of objects before fetching the results. - `region?: string` Filters results by region. - `subregion?: string` Filters results by subregion. ### Returns - `LocationListResponse` - `locations: Array` - `alpha2: string` - `continent: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `region: string` - `subregion: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const locations = await client.radar.entities.locations.list(); console.log(locations.locations); ``` #### Response ```json { "result": { "locations": [ { "alpha2": "AF", "continent": "AS", "latitude": "10", "longitude": "10", "name": "Afghanistan", "region": "Middle East", "subregion": "Southern Asia" } ] }, "success": true } ``` ## Get location details `client.radar.entities.locations.get(stringlocation, LocationGetParamsquery?, RequestOptionsoptions?): LocationGetResponse` **get** `/radar/entities/locations/{location}` Retrieves the requested location information. (A confidence level below `5` indicates a low level of confidence in the traffic data - normally this happens because Cloudflare has a small amount of traffic from/to this location). ### Parameters - `location: string` Location alpha-2 code. - `query: LocationGetParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` ### Returns - `LocationGetResponse` - `location: Location` - `alpha2: string` - `confidenceLevel: number` - `continent: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `region: string` - `subregion: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const location = await client.radar.entities.locations.get('US'); console.log(location.location); ``` #### Response ```json { "result": { "location": { "alpha2": "AF", "confidenceLevel": 5, "continent": "AS", "latitude": "10", "longitude": "10", "name": "Afghanistan", "region": "Middle East", "subregion": "Southern Asia" } }, "success": true } ``` ## Domain Types ### Location List Response - `LocationListResponse` - `locations: Array` - `alpha2: string` - `continent: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `region: string` - `subregion: string` ### Location Get Response - `LocationGetResponse` - `location: Location` - `alpha2: string` - `confidenceLevel: number` - `continent: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `region: string` - `subregion: string` # Geolocations ## List Geolocations `client.radar.geolocations.list(GeolocationListParamsquery?, RequestOptionsoptions?): GeolocationListResponse` **get** `/radar/geolocations` Retrieves a list of geolocations. Geolocation names can be localized by sending an `Accept-Language` HTTP header with a BCP 47 language tag (e.g., `Accept-Language: pt-PT`). The full quality-value chain is supported (e.g., `pt-PT,pt;q=0.9,en;q=0.8`). ### Parameters - `query: GeolocationListParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: string` Filters results by geolocation. Specify a comma-separated list of GeoNames IDs. - `limit?: number` Limits the number of objects returned in the response. - `location?: string` Filters results by location. Specify a comma-separated list of alpha-2 location codes. - `offset?: number` Skips the specified number of objects before fetching the results. ### Returns - `GeolocationListResponse` - `geolocations: Array` - `geoId: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `parent: Parent` - `geoId: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `parent: Parent` - `geoId: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `type: "CONTINENT" | "COUNTRY" | "ADM1"` The type of the geolocation. - `"CONTINENT"` - `"COUNTRY"` - `"ADM1"` - `code?: string` - `locale?: string` BCP 47 locale code used for the geolocation name translation - `type: "CONTINENT" | "COUNTRY" | "ADM1"` The type of the geolocation. - `"CONTINENT"` - `"COUNTRY"` - `"ADM1"` - `code?: string` - `locale?: string` BCP 47 locale code used for the geolocation name translation - `type: "CONTINENT" | "COUNTRY" | "ADM1"` The type of the geolocation. - `"CONTINENT"` - `"COUNTRY"` - `"ADM1"` - `code?: string` - `locale?: string` BCP 47 locale code used for the geolocation name translation ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const geolocations = await client.radar.geolocations.list(); console.log(geolocations.geolocations); ``` #### Response ```json { "result": { "geolocations": [ { "geoId": "2267056", "latitude": "10", "longitude": "10", "name": "Lisbon", "parent": { "geoId": "2267056", "latitude": "10", "longitude": "10", "name": "Lisbon", "parent": { "geoId": "2267056", "latitude": "10", "longitude": "10", "name": "Lisbon", "type": "CONTINENT", "code": "PT-11", "locale": "pt-PT" }, "type": "CONTINENT", "code": "PT-11", "locale": "pt-PT" }, "type": "CONTINENT", "code": "PT-11", "locale": "pt-PT" } ] }, "success": true } ``` ## Get Geolocation details `client.radar.geolocations.get(stringgeoId, GeolocationGetParamsquery?, RequestOptionsoptions?): GeolocationGetResponse` **get** `/radar/geolocations/{geo_id}` Retrieves the requested Geolocation information. Geolocation names can be localized by sending an `Accept-Language` HTTP header with a BCP 47 language tag (e.g., `Accept-Language: pt-PT`). The full quality-value chain is supported (e.g., `pt-PT,pt;q=0.9,en;q=0.8`). ### Parameters - `geoId: string` Geolocation ID. Refer to [GeoNames](https://download.geonames.org/export/dump/readme.txt) - `query: GeolocationGetParams` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` ### Returns - `GeolocationGetResponse` - `geolocation: Geolocation` - `geoId: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `parent: Parent` - `geoId: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `parent: Parent` - `geoId: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `type: "CONTINENT" | "COUNTRY" | "ADM1"` The type of the geolocation. - `"CONTINENT"` - `"COUNTRY"` - `"ADM1"` - `code?: string` - `locale?: string` BCP 47 locale code used for the geolocation name translation - `type: "CONTINENT" | "COUNTRY" | "ADM1"` The type of the geolocation. - `"CONTINENT"` - `"COUNTRY"` - `"ADM1"` - `code?: string` - `locale?: string` BCP 47 locale code used for the geolocation name translation - `type: "CONTINENT" | "COUNTRY" | "ADM1"` The type of the geolocation. - `"CONTINENT"` - `"COUNTRY"` - `"ADM1"` - `code?: string` - `locale?: string` BCP 47 locale code used for the geolocation name translation ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const geolocation = await client.radar.geolocations.get('3190509'); console.log(geolocation.geolocation); ``` #### Response ```json { "result": { "geolocation": { "geoId": "2267056", "latitude": "10", "longitude": "10", "name": "Lisbon", "parent": { "geoId": "2267056", "latitude": "10", "longitude": "10", "name": "Lisbon", "parent": { "geoId": "2267056", "latitude": "10", "longitude": "10", "name": "Lisbon", "type": "CONTINENT", "code": "PT-11", "locale": "pt-PT" }, "type": "CONTINENT", "code": "PT-11", "locale": "pt-PT" }, "type": "CONTINENT", "code": "PT-11", "locale": "pt-PT" } }, "success": true } ``` ## Domain Types ### Geolocation List Response - `GeolocationListResponse` - `geolocations: Array` - `geoId: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `parent: Parent` - `geoId: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `parent: Parent` - `geoId: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `type: "CONTINENT" | "COUNTRY" | "ADM1"` The type of the geolocation. - `"CONTINENT"` - `"COUNTRY"` - `"ADM1"` - `code?: string` - `locale?: string` BCP 47 locale code used for the geolocation name translation - `type: "CONTINENT" | "COUNTRY" | "ADM1"` The type of the geolocation. - `"CONTINENT"` - `"COUNTRY"` - `"ADM1"` - `code?: string` - `locale?: string` BCP 47 locale code used for the geolocation name translation - `type: "CONTINENT" | "COUNTRY" | "ADM1"` The type of the geolocation. - `"CONTINENT"` - `"COUNTRY"` - `"ADM1"` - `code?: string` - `locale?: string` BCP 47 locale code used for the geolocation name translation ### Geolocation Get Response - `GeolocationGetResponse` - `geolocation: Geolocation` - `geoId: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `parent: Parent` - `geoId: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `parent: Parent` - `geoId: string` - `latitude: string` A numeric string. - `longitude: string` A numeric string. - `name: string` - `type: "CONTINENT" | "COUNTRY" | "ADM1"` The type of the geolocation. - `"CONTINENT"` - `"COUNTRY"` - `"ADM1"` - `code?: string` - `locale?: string` BCP 47 locale code used for the geolocation name translation - `type: "CONTINENT" | "COUNTRY" | "ADM1"` The type of the geolocation. - `"CONTINENT"` - `"COUNTRY"` - `"ADM1"` - `code?: string` - `locale?: string` BCP 47 locale code used for the geolocation name translation - `type: "CONTINENT" | "COUNTRY" | "ADM1"` The type of the geolocation. - `"CONTINENT"` - `"COUNTRY"` - `"ADM1"` - `code?: string` - `locale?: string` BCP 47 locale code used for the geolocation name translation # HTTP ## Get HTTP requests summary by dimension `client.radar.http.summaryV2("ADM1" | "AS" | "BOT_CLASS" | 10 moredimension, HTTPSummaryV2Paramsquery?, RequestOptionsoptions?): HTTPSummaryV2Response` **get** `/radar/http/summary/{dimension}` Retrieves the distribution of HTTP requests by the specified dimension. ### Parameters - `dimension: "ADM1" | "AS" | "BOT_CLASS" | 10 more` Specifies the HTTP attribute by which to group the results. - `"ADM1"` - `"AS"` - `"BOT_CLASS"` - `"BROWSER"` - `"BROWSER_FAMILY"` - `"DEVICE_TYPE"` - `"HTTP_PROTOCOL"` - `"HTTP_VERSION"` - `"IP_VERSION"` - `"LOCATION"` - `"OS"` - `"POST_QUANTUM"` - `"TLS_VERSION"` - `query: HTTPSummaryV2Params` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `HTTPSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.summaryV2('ADM1'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "Chrome": "50.168733", "Firefox": "25.084366" } }, "success": true } ``` ## Get HTTP requests time series `client.radar.http.timeseries(HTTPTimeseriesParamsquery?, RequestOptionsoptions?): HTTPTimeseriesResponse` **get** `/radar/http/timeseries` Retrieves the HTTP requests over time. ### Parameters - `query: HTTPTimeseriesParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE_CHANGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE_CHANGE"` - `"MIN0_MAX"` - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `HTTPTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.timeseries(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] } }, "success": true } ``` ## Get HTTP requests time series grouped by dimension `client.radar.http.timeseriesGroupsV2("ADM1" | "AS" | "BOT_CLASS" | 10 moredimension, HTTPTimeseriesGroupsV2Paramsquery?, RequestOptionsoptions?): HTTPTimeseriesGroupsV2Response` **get** `/radar/http/timeseries_groups/{dimension}` Retrieves the distribution of HTTP requests grouped by dimension. ### Parameters - `dimension: "ADM1" | "AS" | "BOT_CLASS" | 10 more` Specifies the HTTP attribute by which to group the results. - `"ADM1"` - `"AS"` - `"BOT_CLASS"` - `"BROWSER"` - `"BROWSER_FAMILY"` - `"DEVICE_TYPE"` - `"HTTP_PROTOCOL"` - `"HTTP_VERSION"` - `"IP_VERSION"` - `"LOCATION"` - `"OS"` - `"POST_QUANTUM"` - `"TLS_VERSION"` - `query: HTTPTimeseriesGroupsV2Params` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `HTTPTimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.timeseriesGroupsV2('ADM1'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### HTTP Summary V2 Response - `HTTPSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### HTTP Timeseries Response - `HTTPTimeseriesResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### HTTP Timeseries Groups V2 Response - `HTTPTimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Locations ## Get top locations by HTTP requests `client.radar.http.locations.get(LocationGetParamsquery?, RequestOptionsoptions?): LocationGetResponse` **get** `/radar/http/top/locations` Retrieves the top locations by HTTP requests. ### Parameters - `query: LocationGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `LocationGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const location = await client.radar.http.locations.get(); console.log(location.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Location Get Response - `LocationGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # Bot Class ## Get top locations by HTTP requests for a bot class `client.radar.http.locations.botClass.get("LIKELY_AUTOMATED" | "LIKELY_HUMAN"botClass, BotClassGetParamsquery?, RequestOptionsoptions?): BotClassGetResponse` **get** `/radar/http/top/locations/bot_class/{bot_class}` Retrieves the top locations, by HTTP requests, of the requested bot class. ### Parameters - `botClass: "LIKELY_AUTOMATED" | "LIKELY_HUMAN"` Bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `query: BotClassGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `BotClassGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const botClass = await client.radar.http.locations.botClass.get('LIKELY_AUTOMATED'); console.log(botClass.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Bot Class Get Response - `BotClassGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # Device Type ## Get top locations by HTTP requests for a device type `client.radar.http.locations.deviceType.get("DESKTOP" | "MOBILE" | "OTHER"deviceType, DeviceTypeGetParamsquery?, RequestOptionsoptions?): DeviceTypeGetResponse` **get** `/radar/http/top/locations/device_type/{device_type}` Retrieves the top locations, by HTTP requests, of the requested device type. ### Parameters - `deviceType: "DESKTOP" | "MOBILE" | "OTHER"` Device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `query: DeviceTypeGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `DeviceTypeGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const deviceType = await client.radar.http.locations.deviceType.get('DESKTOP'); console.log(deviceType.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Device Type Get Response - `DeviceTypeGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # HTTP Protocol ## Get top locations by HTTP requests for an HTTP protocol `client.radar.http.locations.httpProtocol.get("HTTP" | "HTTPS"httpProtocol, HTTPProtocolGetParamsquery?, RequestOptionsoptions?): HTTPProtocolGetResponse` **get** `/radar/http/top/locations/http_protocol/{http_protocol}` Retrieves the top locations, by HTTP requests, of the requested HTTP protocol. ### Parameters - `httpProtocol: "HTTP" | "HTTPS"` HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `query: HTTPProtocolGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `HTTPProtocolGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const httpProtocol = await client.radar.http.locations.httpProtocol.get('HTTP'); console.log(httpProtocol.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### HTTP Protocol Get Response - `HTTPProtocolGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # HTTP Method ## Get top locations by HTTP requests for an HTTP version `client.radar.http.locations.httpMethod.get("HTTPv1" | "HTTPv2" | "HTTPv3"httpVersion, HTTPMethodGetParamsquery?, RequestOptionsoptions?): HTTPMethodGetResponse` **get** `/radar/http/top/locations/http_version/{http_version}` Retrieves the top locations, by HTTP requests, of the requested HTTP version. ### Parameters - `httpVersion: "HTTPv1" | "HTTPv2" | "HTTPv3"` HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `query: HTTPMethodGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `HTTPMethodGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const httpMethod = await client.radar.http.locations.httpMethod.get('HTTPv1'); console.log(httpMethod.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### HTTP Method Get Response - `HTTPMethodGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # IP Version ## Get top locations by HTTP requests for an IP version `client.radar.http.locations.ipVersion.get("IPv4" | "IPv6"ipVersion, IPVersionGetParamsquery?, RequestOptionsoptions?): IPVersionGetResponse` **get** `/radar/http/top/locations/ip_version/{ip_version}` Retrieves the top locations, by HTTP requests, of the requested IP version. ### Parameters - `ipVersion: "IPv4" | "IPv6"` IP version. - `"IPv4"` - `"IPv6"` - `query: IPVersionGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `IPVersionGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const ipVersion = await client.radar.http.locations.ipVersion.get('IPv4'); console.log(ipVersion.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### IP Version Get Response - `IPVersionGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # OS ## Get top locations by HTTP requests for an OS `client.radar.http.locations.os.get("WINDOWS" | "MACOSX" | "IOS" | 4 moreos, OSGetParamsquery?, RequestOptionsoptions?): OSGetResponse` **get** `/radar/http/top/locations/os/{os}` Retrieves the top locations, by HTTP requests, of the requested operating system. ### Parameters - `os: "WINDOWS" | "MACOSX" | "IOS" | 4 more` Operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `query: OSGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `OSGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const os = await client.radar.http.locations.os.get('WINDOWS'); console.log(os.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### OS Get Response - `OSGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # TLS Version ## Get top locations by HTTP requests for a TLS version `client.radar.http.locations.tlsVersion.get("TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 moretlsVersion, TLSVersionGetParamsquery?, RequestOptionsoptions?): TLSVersionGetResponse` **get** `/radar/http/top/locations/tls_version/{tls_version}` Retrieves the top locations, by HTTP requests, of the requested TLS protocol version. ### Parameters - `tlsVersion: "TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more` TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` - `query: TLSVersionGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` ### Returns - `TLSVersionGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const tlsVersion = await client.radar.http.locations.tlsVersion.get('TLSv1_0'); console.log(tlsVersion.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### TLS Version Get Response - `TLSVersionGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # Browser Family ## Get top locations by HTTP requests for a browser family `client.radar.http.locations.browserFamily.get("CHROME" | "EDGE" | "FIREFOX" | "SAFARI"browserFamily, BrowserFamilyGetParamsquery?, RequestOptionsoptions?): BrowserFamilyGetResponse` **get** `/radar/http/top/locations/browser_family/{browser_family}` Retrieves the top locations, by HTTP requests, of the requested browser family. ### Parameters - `browserFamily: "CHROME" | "EDGE" | "FIREFOX" | "SAFARI"` Browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `query: BrowserFamilyGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `BrowserFamilyGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const browserFamily = await client.radar.http.locations.browserFamily.get('CHROME'); console.log(browserFamily.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Browser Family Get Response - `BrowserFamilyGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # Ases ## Get top ASes by HTTP requests `client.radar.http.ases.get(AseGetParamsquery?, RequestOptionsoptions?): AseGetResponse` **get** `/radar/http/top/ases` Retrieves the top autonomous systems by HTTP requests. ### Parameters - `query: AseGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `AseGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const ase = await client.radar.http.ases.get(); console.log(ase.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Ase Get Response - `AseGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. # Bot Class ## Get top ASes by HTTP requests for a bot class `client.radar.http.ases.botClass.get("LIKELY_AUTOMATED" | "LIKELY_HUMAN"botClass, BotClassGetParamsquery?, RequestOptionsoptions?): BotClassGetResponse` **get** `/radar/http/top/ases/bot_class/{bot_class}` Retrieves the top autonomous systems, by HTTP requests, of the requested bot class. ### Parameters - `botClass: "LIKELY_AUTOMATED" | "LIKELY_HUMAN"` Bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `query: BotClassGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `BotClassGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const botClass = await client.radar.http.ases.botClass.get('LIKELY_AUTOMATED'); console.log(botClass.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Bot Class Get Response - `BotClassGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. # Device Type ## Get top ASes by HTTP requests for a device type `client.radar.http.ases.deviceType.get("DESKTOP" | "MOBILE" | "OTHER"deviceType, DeviceTypeGetParamsquery?, RequestOptionsoptions?): DeviceTypeGetResponse` **get** `/radar/http/top/ases/device_type/{device_type}` Retrieves the top autonomous systems, by HTTP requests, of the requested device type. ### Parameters - `deviceType: "DESKTOP" | "MOBILE" | "OTHER"` Device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `query: DeviceTypeGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `DeviceTypeGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const deviceType = await client.radar.http.ases.deviceType.get('DESKTOP'); console.log(deviceType.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Device Type Get Response - `DeviceTypeGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. # HTTP Protocol ## Get top ASes by HTTP requests for an HTTP protocol `client.radar.http.ases.httpProtocol.get("HTTP" | "HTTPS"httpProtocol, HTTPProtocolGetParamsquery?, RequestOptionsoptions?): HTTPProtocolGetResponse` **get** `/radar/http/top/ases/http_protocol/{http_protocol}` Retrieves the top autonomous systems, by HTTP requests, of the requested HTTP protocol. ### Parameters - `httpProtocol: "HTTP" | "HTTPS"` HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `query: HTTPProtocolGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `HTTPProtocolGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const httpProtocol = await client.radar.http.ases.httpProtocol.get('HTTP'); console.log(httpProtocol.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` ## Domain Types ### HTTP Protocol Get Response - `HTTPProtocolGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. # HTTP Method ## Get top ASes by HTTP requests for an HTTP version `client.radar.http.ases.httpMethod.get("HTTPv1" | "HTTPv2" | "HTTPv3"httpVersion, HTTPMethodGetParamsquery?, RequestOptionsoptions?): HTTPMethodGetResponse` **get** `/radar/http/top/ases/http_version/{http_version}` Retrieves the top autonomous systems, by HTTP requests, of the requested HTTP version. ### Parameters - `httpVersion: "HTTPv1" | "HTTPv2" | "HTTPv3"` HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `query: HTTPMethodGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `HTTPMethodGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const httpMethod = await client.radar.http.ases.httpMethod.get('HTTPv1'); console.log(httpMethod.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` ## Domain Types ### HTTP Method Get Response - `HTTPMethodGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. # IP Version ## Get top ASes by HTTP requests for an IP version `client.radar.http.ases.ipVersion.get("IPv4" | "IPv6"ipVersion, IPVersionGetParamsquery?, RequestOptionsoptions?): IPVersionGetResponse` **get** `/radar/http/top/ases/ip_version/{ip_version}` Retrieves the top autonomous systems, by HTTP requests, of the requested IP version. ### Parameters - `ipVersion: "IPv4" | "IPv6"` IP version. - `"IPv4"` - `"IPv6"` - `query: IPVersionGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `IPVersionGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const ipVersion = await client.radar.http.ases.ipVersion.get('IPv4'); console.log(ipVersion.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` ## Domain Types ### IP Version Get Response - `IPVersionGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. # OS ## Get top ASes by HTTP requests for an OS `client.radar.http.ases.os.get("WINDOWS" | "MACOSX" | "IOS" | 4 moreos, OSGetParamsquery?, RequestOptionsoptions?): OSGetResponse` **get** `/radar/http/top/ases/os/{os}` Retrieves the top autonomous systems, by HTTP requests, of the requested operating system. ### Parameters - `os: "WINDOWS" | "MACOSX" | "IOS" | 4 more` Operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `query: OSGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `OSGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const os = await client.radar.http.ases.os.get('WINDOWS'); console.log(os.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` ## Domain Types ### OS Get Response - `OSGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. # TLS Version ## Get top ASes by HTTP requests for a TLS version `client.radar.http.ases.tlsVersion.get("TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 moretlsVersion, TLSVersionGetParamsquery?, RequestOptionsoptions?): TLSVersionGetResponse` **get** `/radar/http/top/ases/tls_version/{tls_version}` Retrieves the top autonomous systems, by HTTP requests, of the requested TLS protocol version. ### Parameters - `tlsVersion: "TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more` TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` - `query: TLSVersionGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` ### Returns - `TLSVersionGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const tlsVersion = await client.radar.http.ases.tlsVersion.get('TLSv1_0'); console.log(tlsVersion.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` ## Domain Types ### TLS Version Get Response - `TLSVersionGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. # Browser Family ## Get top ASes by HTTP requests for a browser family `client.radar.http.ases.browserFamily.get("CHROME" | "EDGE" | "FIREFOX" | "SAFARI"browserFamily, BrowserFamilyGetParamsquery?, RequestOptionsoptions?): BrowserFamilyGetResponse` **get** `/radar/http/top/ases/browser_family/{browser_family}` Retrieves the top autonomous systems, by HTTP requests, of the requested browser family. ### Parameters - `browserFamily: "CHROME" | "EDGE" | "FIREFOX" | "SAFARI"` Browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `query: BrowserFamilyGetParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `BrowserFamilyGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const browserFamily = await client.radar.http.ases.browserFamily.get('CHROME'); console.log(browserFamily.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Browser Family Get Response - `BrowserFamilyGetResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `clientASN: number` - `clientASName: string` - `value: string` A numeric string. # Summary ## Get HTTP requests by bot class summary `client.radar.http.summary.botClass(SummaryBotClassParamsquery?, RequestOptionsoptions?): SummaryBotClassResponse` **get** `/radar/http/summary/bot_class` Retrieves the distribution of bot-generated HTTP requests to genuine human traffic, as classified by Cloudflare. Visit https://developers.cloudflare.com/radar/concepts/bot-classes/ for more information. ### Parameters - `query: SummaryBotClassParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `SummaryBotClassResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `bot: string` A numeric string. - `human: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.summary.botClass(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "bot": "10", "human": "10" } }, "success": true } ``` ## Get HTTP requests by device type summary `client.radar.http.summary.deviceType(SummaryDeviceTypeParamsquery?, RequestOptionsoptions?): SummaryDeviceTypeResponse` **get** `/radar/http/summary/device_type` Retrieves the distribution of HTTP requests generated by mobile, desktop, and other types of devices. ### Parameters - `query: SummaryDeviceTypeParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `SummaryDeviceTypeResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `desktop: string` A numeric string. - `mobile: string` A numeric string. - `other: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.summary.deviceType(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "desktop": "10", "mobile": "10", "other": "10" } }, "success": true } ``` ## Get HTTP requests by HTTP/HTTPS summary `client.radar.http.summary.httpProtocol(SummaryHTTPProtocolParamsquery?, RequestOptionsoptions?): SummaryHTTPProtocolResponse` **get** `/radar/http/summary/http_protocol` Retrieves the distribution of HTTP requests by HTTP protocol (HTTP vs. HTTPS). ### Parameters - `query: SummaryHTTPProtocolParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `SummaryHTTPProtocolResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `http: string` A numeric string. - `https: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.summary.httpProtocol(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "http": "10", "https": "10" } }, "success": true } ``` ## Get HTTP requests by HTTP version summary `client.radar.http.summary.httpVersion(SummaryHTTPVersionParamsquery?, RequestOptionsoptions?): SummaryHTTPVersionResponse` **get** `/radar/http/summary/http_version` Retrieves the distribution of HTTP requests by HTTP version. ### Parameters - `query: SummaryHTTPVersionParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `SummaryHTTPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `"HTTP/1.x": string` A numeric string. - `"HTTP/2": string` A numeric string. - `"HTTP/3": string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.summary.httpVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "HTTP/1.x": "10", "HTTP/2": "10", "HTTP/3": "10" } }, "success": true } ``` ## Get HTTP requests by IP version summary `client.radar.http.summary.ipVersion(SummaryIPVersionParamsquery?, RequestOptionsoptions?): SummaryIPVersionResponse` **get** `/radar/http/summary/ip_version` Retrieves the distribution of HTTP requests by IP version. ### Parameters - `query: SummaryIPVersionParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `SummaryIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `IPv4: string` A numeric string. - `IPv6: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.summary.ipVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "IPv4": "10", "IPv6": "10" } }, "success": true } ``` ## Get HTTP requests by OS summary `client.radar.http.summary.os(SummaryOSParamsquery?, RequestOptionsoptions?): SummaryOSResponse` **get** `/radar/http/summary/os` Retrieves the distribution of HTTP requests by operating system (Windows, macOS, Android, iOS, and others). ### Parameters - `query: SummaryOSParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `SummaryOSResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `ANDROID: string` A numeric string. - `IOS: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.summary.os(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "ANDROID": "10", "IOS": "10" } }, "success": true } ``` ## Get HTTP requests by TLS version summary `client.radar.http.summary.tlsVersion(SummaryTLSVersionParamsquery?, RequestOptionsoptions?): SummaryTLSVersionResponse` **get** `/radar/http/summary/tls_version` Retrieves the distribution of HTTP requests by TLS version. ### Parameters - `query: SummaryTLSVersionParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` ### Returns - `SummaryTLSVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `"TLS 1.0": string` A numeric string. - `"TLS 1.1": string` A numeric string. - `"TLS 1.2": string` A numeric string. - `"TLS 1.3": string` A numeric string. - `"TLS QUIC": string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.summary.tlsVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "TLS 1.0": "10", "TLS 1.1": "10", "TLS 1.2": "10", "TLS 1.3": "10", "TLS QUIC": "10" } }, "success": true } ``` ## Get HTTP requests by post-quantum support summary `client.radar.http.summary.postQuantum(SummaryPostQuantumParamsquery?, RequestOptionsoptions?): SummaryPostQuantumResponse` **get** `/radar/http/summary/post_quantum` Retrieves the distribution of HTTP requests by post-quantum support. ### Parameters - `query: SummaryPostQuantumParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `SummaryPostQuantumResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NOT_SUPPORTED: string` A numeric string. - `SUPPORTED: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.summary.postQuantum(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "NOT_SUPPORTED": "10", "SUPPORTED": "10" } }, "success": true } ``` ## Domain Types ### Summary Bot Class Response - `SummaryBotClassResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `bot: string` A numeric string. - `human: string` A numeric string. ### Summary Device Type Response - `SummaryDeviceTypeResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `desktop: string` A numeric string. - `mobile: string` A numeric string. - `other: string` A numeric string. ### Summary HTTP Protocol Response - `SummaryHTTPProtocolResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `http: string` A numeric string. - `https: string` A numeric string. ### Summary HTTP Version Response - `SummaryHTTPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `"HTTP/1.x": string` A numeric string. - `"HTTP/2": string` A numeric string. - `"HTTP/3": string` A numeric string. ### Summary IP Version Response - `SummaryIPVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `IPv4: string` A numeric string. - `IPv6: string` A numeric string. ### Summary OS Response - `SummaryOSResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `ANDROID: string` A numeric string. - `IOS: string` A numeric string. ### Summary TLS Version Response - `SummaryTLSVersionResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `"TLS 1.0": string` A numeric string. - `"TLS 1.1": string` A numeric string. - `"TLS 1.2": string` A numeric string. - `"TLS 1.3": string` A numeric string. - `"TLS QUIC": string` A numeric string. ### Summary Post Quantum Response - `SummaryPostQuantumResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `NOT_SUPPORTED: string` A numeric string. - `SUPPORTED: string` A numeric string. # Timeseries Groups ## Get HTTP requests by TLS version time series `client.radar.http.timeseriesGroups.tlsVersion(TimeseriesGroupTLSVersionParamsquery?, RequestOptionsoptions?): TimeseriesGroupTLSVersionResponse` **get** `/radar/http/timeseries_groups/tls_version` Retrieves the distribution of HTTP requests by TLS version over time. ### Parameters - `query: TimeseriesGroupTLSVersionParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` ### Returns - `TimeseriesGroupTLSVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` - `"TLS 1.0": Array` - `"TLS 1.1": Array` - `"TLS 1.2": Array` - `"TLS 1.3": Array` - `"TLS QUIC": Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.timeseriesGroups.tlsVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2019-12-27T18:11:19.117Z" ], "TLS 1.0": [ "10" ], "TLS 1.1": [ "10" ], "TLS 1.2": [ "10" ], "TLS 1.3": [ "10" ], "TLS QUIC": [ "10" ] } }, "success": true } ``` ## Get HTTP requests by bot class time series `client.radar.http.timeseriesGroups.botClass(TimeseriesGroupBotClassParamsquery?, RequestOptionsoptions?): TimeseriesGroupBotClassResponse` **get** `/radar/http/timeseries_groups/bot_class` Retrieves the distribution of HTTP requests classified as automated or human over time. Visit https://developers.cloudflare.com/radar/concepts/bot-classes/ for more information. ### Parameters - `query: TimeseriesGroupBotClassParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `TimeseriesGroupBotClassResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `bot: Array` - `human: Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.timeseriesGroups.botClass(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "bot": [ "10" ], "human": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get HTTP requests by user agent time series `client.radar.http.timeseriesGroups.browser(TimeseriesGroupBrowserParamsquery?, RequestOptionsoptions?): TimeseriesGroupBrowserResponse` **get** `/radar/http/timeseries_groups/browser` Retrieves the distribution of HTTP requests by user agent over time. ### Parameters - `query: TimeseriesGroupBrowserParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `TimeseriesGroupBrowserResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.timeseriesGroups.browser(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get HTTP requests by user agent family time series `client.radar.http.timeseriesGroups.browserFamily(TimeseriesGroupBrowserFamilyParamsquery?, RequestOptionsoptions?): TimeseriesGroupBrowserFamilyResponse` **get** `/radar/http/timeseries_groups/browser_family` Retrieves the distribution of HTTP requests by user agent family over time. ### Parameters - `query: TimeseriesGroupBrowserFamilyParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `TimeseriesGroupBrowserFamilyResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.timeseriesGroups.browserFamily(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get HTTP requests by device type time series `client.radar.http.timeseriesGroups.deviceType(TimeseriesGroupDeviceTypeParamsquery?, RequestOptionsoptions?): TimeseriesGroupDeviceTypeResponse` **get** `/radar/http/timeseries_groups/device_type` Retrieves the distribution of HTTP requests by device type over time. ### Parameters - `query: TimeseriesGroupDeviceTypeParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `TimeseriesGroupDeviceTypeResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `desktop: Array` - `mobile: Array` - `other: Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.timeseriesGroups.deviceType(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "desktop": [ "10" ], "mobile": [ "10" ], "other": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get HTTP requests by HTTP/HTTPS time series `client.radar.http.timeseriesGroups.httpProtocol(TimeseriesGroupHTTPProtocolParamsquery?, RequestOptionsoptions?): TimeseriesGroupHTTPProtocolResponse` **get** `/radar/http/timeseries_groups/http_protocol` Retrieves the distribution of HTTP requests by HTTP protocol (HTTP vs. HTTPS) over time. ### Parameters - `query: TimeseriesGroupHTTPProtocolParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `TimeseriesGroupHTTPProtocolResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `http: Array` - `https: Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.timeseriesGroups.httpProtocol(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "http": [ "10" ], "https": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get HTTP requests by HTTP version time series `client.radar.http.timeseriesGroups.httpVersion(TimeseriesGroupHTTPVersionParamsquery?, RequestOptionsoptions?): TimeseriesGroupHTTPVersionResponse` **get** `/radar/http/timeseries_groups/http_version` Retrieves the distribution of HTTP requests by HTTP version over time. ### Parameters - `query: TimeseriesGroupHTTPVersionParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `TimeseriesGroupHTTPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `"HTTP/1.x": Array` - `"HTTP/2": Array` - `"HTTP/3": Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.timeseriesGroups.httpVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "HTTP/1.x": [ "10" ], "HTTP/2": [ "10" ], "HTTP/3": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get HTTP requests by IP version time series `client.radar.http.timeseriesGroups.ipVersion(TimeseriesGroupIPVersionParamsquery?, RequestOptionsoptions?): TimeseriesGroupIPVersionResponse` **get** `/radar/http/timeseries_groups/ip_version` Retrieves the distribution of HTTP requests by IP version over time. ### Parameters - `query: TimeseriesGroupIPVersionParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `TimeseriesGroupIPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `IPv4: Array` - `IPv6: Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.timeseriesGroups.ipVersion(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "IPv4": [ "10" ], "IPv6": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get HTTP requests by OS time series `client.radar.http.timeseriesGroups.os(TimeseriesGroupOSParamsquery?, RequestOptionsoptions?): TimeseriesGroupOSResponse` **get** `/radar/http/timeseries_groups/os` Retrieves the distribution of HTTP requests by operating system over time. ### Parameters - `query: TimeseriesGroupOSParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `TimeseriesGroupOSResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.timeseriesGroups.os(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Get HTTP requests by post-quantum support time series `client.radar.http.timeseriesGroups.postQuantum(TimeseriesGroupPostQuantumParamsquery?, RequestOptionsoptions?): TimeseriesGroupPostQuantumResponse` **get** `/radar/http/timeseries_groups/post_quantum` Retrieves the distribution of HTTP requests by post-quantum support over time. ### Parameters - `query: TimeseriesGroupPostQuantumParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `TimeseriesGroupPostQuantumResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NOT_SUPPORTED: Array` - `SUPPORTED: Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.timeseriesGroups.postQuantum(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "NOT_SUPPORTED": [ "10" ], "SUPPORTED": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Domain Types ### Timeseries Group TLS Version Response - `TimeseriesGroupTLSVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` - `"TLS 1.0": Array` - `"TLS 1.1": Array` - `"TLS 1.2": Array` - `"TLS 1.3": Array` - `"TLS QUIC": Array` ### Timeseries Group Bot Class Response - `TimeseriesGroupBotClassResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `bot: Array` - `human: Array` - `timestamps: Array` ### Timeseries Group Browser Response - `TimeseriesGroupBrowserResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group Browser Family Response - `TimeseriesGroupBrowserFamilyResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group Device Type Response - `TimeseriesGroupDeviceTypeResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `desktop: Array` - `mobile: Array` - `other: Array` - `timestamps: Array` ### Timeseries Group HTTP Protocol Response - `TimeseriesGroupHTTPProtocolResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `http: Array` - `https: Array` - `timestamps: Array` ### Timeseries Group HTTP Version Response - `TimeseriesGroupHTTPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `"HTTP/1.x": Array` - `"HTTP/2": Array` - `"HTTP/3": Array` - `timestamps: Array` ### Timeseries Group IP Version Response - `TimeseriesGroupIPVersionResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `IPv4: Array` - `IPv6: Array` - `timestamps: Array` ### Timeseries Group OS Response - `TimeseriesGroupOSResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Timeseries Group Post Quantum Response - `TimeseriesGroupPostQuantumResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `NOT_SUPPORTED: Array` - `SUPPORTED: Array` - `timestamps: Array` # Top ## Get top user agents by HTTP requests `client.radar.http.top.browser(TopBrowserParamsquery?, RequestOptionsoptions?): TopBrowserResponse` **get** `/radar/http/top/browser` Retrieves the top user agents by HTTP requests. ### Parameters - `query: TopBrowserParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `browserFamily?: Array<"CHROME" | "EDGE" | "FIREFOX" | "SAFARI">` Filters results by browser family. - `"CHROME"` - `"EDGE"` - `"FIREFOX"` - `"SAFARI"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `TopBrowserResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.top.browser(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "name": "chrome", "value": "value" } ] }, "success": true } ``` ## Get top user agent families by HTTP requests `client.radar.http.top.browserFamily(TopBrowserFamilyParamsquery?, RequestOptionsoptions?): TopBrowserFamilyResponse` **get** `/radar/http/top/browser_family` Retrieves the top user agents, aggregated in families, by HTTP requests. ### Parameters - `query: TopBrowserFamilyParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `deviceType?: Array<"DESKTOP" | "MOBILE" | "OTHER">` Filters results by device type. - `"DESKTOP"` - `"MOBILE"` - `"OTHER"` - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `geoId?: Array` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `httpProtocol?: Array<"HTTP" | "HTTPS">` Filters results by HTTP protocol (HTTP vs. HTTPS). - `"HTTP"` - `"HTTPS"` - `httpVersion?: Array<"HTTPv1" | "HTTPv2" | "HTTPv3">` Filters results by HTTP version. - `"HTTPv1"` - `"HTTPv2"` - `"HTTPv3"` - `ipVersion?: Array<"IPv4" | "IPv6">` Filters results by IP version (Ipv4 vs. IPv6). - `"IPv4"` - `"IPv6"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `os?: Array<"WINDOWS" | "MACOSX" | "IOS" | 4 more>` Filters results by operating system. - `"WINDOWS"` - `"MACOSX"` - `"IOS"` - `"ANDROID"` - `"CHROMEOS"` - `"LINUX"` - `"SMART_TV"` - `tlsVersion?: Array<"TLSv1_0" | "TLSv1_1" | "TLSv1_2" | 2 more>` Filters results by TLS version. - `"TLSv1_0"` - `"TLSv1_1"` - `"TLSv1_2"` - `"TLSv1_3"` - `"TLSvQUIC"` ### Returns - `TopBrowserFamilyResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.http.top.browserFamily(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "name": "chrome", "value": "value" } ] }, "success": true } ``` ## Domain Types ### Top Browser Response - `TopBrowserResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` ### Top Browser Family Response - `TopBrowserFamilyResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: string` # Origins # Quality # IQI ## Get Internet Quality Index (IQI) summary `client.radar.quality.iqi.summary(IQISummaryParamsquery, RequestOptionsoptions?): IQISummaryResponse` **get** `/radar/quality/iqi/summary` Retrieves a summary (percentiles) of bandwidth, latency, or DNS response time from the Radar Internet Quality Index (IQI). ### Parameters - `query: IQISummaryParams` - `metric: "BANDWIDTH" | "DNS" | "LATENCY"` Defines which metric to return (bandwidth, latency, or DNS response time). - `"BANDWIDTH"` - `"DNS"` - `"LATENCY"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `IQISummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `p25: string` - `p50: string` - `p75: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.quality.iqi.summary({ metric: 'BANDWIDTH' }); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "p25": "32.20938", "p50": "61.819881", "p75": "133.813087" } }, "success": true } ``` ## Get Internet Quality Index (IQI) time series `client.radar.quality.iqi.timeseriesGroups(IQITimeseriesGroupsParamsquery, RequestOptionsoptions?): IQITimeseriesGroupsResponse` **get** `/radar/quality/iqi/timeseries_groups` Retrieves a time series (percentiles) of bandwidth, latency, or DNS response time from the Radar Internet Quality Index (IQI). ### Parameters - `query: IQITimeseriesGroupsParams` - `metric: "BANDWIDTH" | "DNS" | "LATENCY"` Defines which metric to return (bandwidth, latency, or DNS response time). - `"BANDWIDTH"` - `"DNS"` - `"LATENCY"` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `interpolation?: boolean` Enables interpolation for all series (using the average). - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `IQITimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `p25: Array` - `p50: Array` - `p75: Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.quality.iqi.timeseriesGroups({ metric: 'BANDWIDTH' }); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "p25": [ "31.253439" ], "p50": [ "60.337738" ], "p75": [ "125.940175" ], "timestamps": [ "2023-04-17T00:00:00Z" ] } }, "success": true } ``` ## Domain Types ### IQI Summary Response - `IQISummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `p25: string` - `p50: string` - `p75: string` ### IQI Timeseries Groups Response - `IQITimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `p25: Array` - `p50: Array` - `p75: Array` - `timestamps: Array` # Speed ## Get speed tests summary `client.radar.quality.speed.summary(SpeedSummaryParamsquery?, RequestOptionsoptions?): SpeedSummaryResponse` **get** `/radar/quality/speed/summary` Retrieves a summary of bandwidth, latency, jitter, and packet loss, from the previous 90 days of Cloudflare Speed Test data. ### Parameters - `query: SpeedSummaryParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `SpeedSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `bandwidthDownload: string` - `bandwidthUpload: string` - `jitterIdle: string` - `jitterLoaded: string` - `latencyIdle: string` - `latencyLoaded: string` - `packetLoss: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.quality.speed.summary(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "bandwidthDownload": "83.765201", "bandwidthUpload": "39.005561", "jitterIdle": "25.648713", "jitterLoaded": "77.462155", "latencyIdle": "83.165385", "latencyLoaded": "270.561124", "packetLoss": "1.23705" } }, "success": true } ``` ## Get speed tests histogram `client.radar.quality.speed.histogram(SpeedHistogramParamsquery?, RequestOptionsoptions?): SpeedHistogramResponse` **get** `/radar/quality/speed/histogram` Retrieves a histogram from the previous 90 days of Cloudflare Speed Test data, split into fixed bandwidth (Mbps), latency (ms), or jitter (ms) buckets. ### Parameters - `query: SpeedHistogramParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `bucketSize?: number` Specifies the width for every bucket in the histogram. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `metricGroup?: "BANDWIDTH" | "LATENCY" | "JITTER"` Metrics to be returned. - `"BANDWIDTH"` - `"LATENCY"` - `"JITTER"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `SpeedHistogramResponse` - `histogram_0: Histogram0` - `bandwidthDownload: Array` - `bandwidthUpload: Array` - `bucketMin: Array` - `meta: Meta` Metadata for the results. - `bucketSize: number` The width for every bucket in the histogram. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `totalTests: Array` - `units: Array` Measurement units for the results. - `name: string` - `value: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.quality.speed.histogram(); console.log(response.histogram_0); ``` #### Response ```json { "result": { "histogram_0": { "bandwidthDownload": [ "83681" ], "bandwidthUpload": [ "181079" ], "bucketMin": [ "0" ] }, "meta": { "bucketSize": 0, "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "totalTests": [ 0 ], "units": [ { "name": "*", "value": "requests" } ] } }, "success": true } ``` ## Domain Types ### Speed Summary Response - `SpeedSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `bandwidthDownload: string` - `bandwidthUpload: string` - `jitterIdle: string` - `jitterLoaded: string` - `latencyIdle: string` - `latencyLoaded: string` - `packetLoss: string` ### Speed Histogram Response - `SpeedHistogramResponse` - `histogram_0: Histogram0` - `bandwidthDownload: Array` - `bandwidthUpload: Array` - `bucketMin: Array` - `meta: Meta` Metadata for the results. - `bucketSize: number` The width for every bucket in the histogram. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `totalTests: Array` - `units: Array` Measurement units for the results. - `name: string` - `value: string` # Top ## Get top ASes by speed test results `client.radar.quality.speed.top.ases(TopAsesParamsquery?, RequestOptionsoptions?): TopAsesResponse` **get** `/radar/quality/speed/top/ases` Retrieves the top autonomous systems by bandwidth, latency, jitter, or packet loss, from the previous 90 days of Cloudflare Speed Test data. ### Parameters - `query: TopAsesParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `orderBy?: "BANDWIDTH_DOWNLOAD" | "BANDWIDTH_UPLOAD" | "LATENCY_IDLE" | 3 more` Specifies the metric to order the results by. - `"BANDWIDTH_DOWNLOAD"` - `"BANDWIDTH_UPLOAD"` - `"LATENCY_IDLE"` - `"LATENCY_LOADED"` - `"JITTER_IDLE"` - `"JITTER_LOADED"` - `reverse?: boolean` Reverses the order of results. ### Returns - `TopAsesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `bandwidthDownload: string` - `bandwidthUpload: string` - `clientASN: number` - `clientASName: string` - `jitterIdle: string` - `jitterLoaded: string` - `latencyIdle: string` - `latencyLoaded: string` - `numTests: number` - `rankPower: number` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.quality.speed.top.ases(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "bandwidthDownload": "642.509004", "bandwidthUpload": "300.672274", "clientASN": 33353, "clientASName": "SIE-CGEI-ASN-1", "jitterIdle": "2.956908", "jitterLoaded": "19.500469", "latencyIdle": "15.925", "latencyLoaded": "65.65", "numTests": 13123, "rankPower": 0.77 } ] }, "success": true } ``` ## Get top locations by speed test results `client.radar.quality.speed.top.locations(TopLocationsParamsquery?, RequestOptionsoptions?): TopLocationsResponse` **get** `/radar/quality/speed/top/locations` Retrieves the top locations by bandwidth, latency, jitter, or packet loss, from the previous 90 days of Cloudflare Speed Test data. ### Parameters - `query: TopLocationsParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `orderBy?: "BANDWIDTH_DOWNLOAD" | "BANDWIDTH_UPLOAD" | "LATENCY_IDLE" | 3 more` Specifies the metric to order the results by. - `"BANDWIDTH_DOWNLOAD"` - `"BANDWIDTH_UPLOAD"` - `"LATENCY_IDLE"` - `"LATENCY_LOADED"` - `"JITTER_IDLE"` - `"JITTER_LOADED"` - `reverse?: boolean` Reverses the order of results. ### Returns - `TopLocationsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `bandwidthDownload: string` - `bandwidthUpload: string` - `clientCountryAlpha2: string` - `clientCountryName: string` - `jitterIdle: string` - `jitterLoaded: string` - `latencyIdle: string` - `latencyLoaded: string` - `numTests: number` - `rankPower: number` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.quality.speed.top.locations(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "bandwidthDownload": "295.886073", "bandwidthUpload": "158.85269", "clientCountryAlpha2": "IS", "clientCountryName": "Iceland", "jitterIdle": "9.640685", "jitterLoaded": "46.480023", "latencyIdle": "15.208124", "latencyLoaded": "114.758887", "numTests": 13123, "rankPower": 0.77 } ] }, "success": true } ``` ## Domain Types ### Top Ases Response - `TopAsesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `bandwidthDownload: string` - `bandwidthUpload: string` - `clientASN: number` - `clientASName: string` - `jitterIdle: string` - `jitterLoaded: string` - `latencyIdle: string` - `latencyLoaded: string` - `numTests: number` - `rankPower: number` ### Top Locations Response - `TopLocationsResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `bandwidthDownload: string` - `bandwidthUpload: string` - `clientCountryAlpha2: string` - `clientCountryName: string` - `jitterIdle: string` - `jitterLoaded: string` - `latencyIdle: string` - `latencyLoaded: string` - `numTests: number` - `rankPower: number` # Ranking ## Get domains rank time series `client.radar.ranking.timeseriesGroups(RankingTimeseriesGroupsParamsquery?, RequestOptionsoptions?): RankingTimeseriesGroupsResponse` **get** `/radar/ranking/timeseries_groups` Retrieves domains rank over time. ### Parameters - `query: RankingTimeseriesGroupsParams` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `domainCategory?: Array` Filters results by domain category. - `domains?: Array` Filters results by domain name. Specify a comma-separated list of domain names. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 location codes. - `name?: Array` Array of names used to label the series in the response. - `rankingType?: "POPULAR" | "TRENDING_RISE" | "TRENDING_STEADY"` The ranking type. - `"POPULAR"` - `"TRENDING_RISE"` - `"TRENDING_STEADY"` ### Returns - `RankingTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ranking.timeseriesGroups(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get top or trending domains `client.radar.ranking.top(RankingTopParamsquery?, RequestOptionsoptions?): RankingTopResponse` **get** `/radar/ranking/top` Retrieves the top or trending domains based on their rank. Popular domains are domains of broad appeal based on how people use the Internet. Trending domains are domains that are generating a surge in interest. For more information on top domains, see https://blog.cloudflare.com/radar-domain-rankings/. ### Parameters - `query: RankingTopParams` - `date?: Array` Filters results by the specified array of dates. - `domainCategory?: Array` Filters results by domain category. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 location codes. - `name?: Array` Array of names used to label the series in the response. - `rankingType?: "POPULAR" | "TRENDING_RISE" | "TRENDING_STEADY"` The ranking type. - `"POPULAR"` - `"TRENDING_RISE"` - `"TRENDING_STEADY"` ### Returns - `RankingTopResponse` - `meta: Meta` - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `categories: Array` - `id: number` - `name: string` - `superCategoryId: number` - `domain: string` - `rank: number` - `pctRankChange?: number` Only available in TRENDING rankings. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ranking.top(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "categories": [ { "id": 81, "name": "Content Servers", "superCategoryId": 26 } ], "domain": "google.com", "rank": 1, "pctRankChange": 10.8 } ] }, "success": true } ``` ## Domain Types ### Ranking Timeseries Groups Response - `RankingTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Ranking Top Response - `RankingTopResponse` - `meta: Meta` - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `categories: Array` - `id: number` - `name: string` - `superCategoryId: number` - `domain: string` - `rank: number` - `pctRankChange?: number` Only available in TRENDING rankings. # Domain ## Get domain rank details `client.radar.ranking.domain.get(stringdomain, DomainGetParamsquery?, RequestOptionsoptions?): DomainGetResponse` **get** `/radar/ranking/domain/{domain}` Retrieves domain rank details. Cloudflare provides an ordered rank for the top 100 domains, but for the remainder it only provides ranking buckets like top 200 thousand, top one million, etc.. These are available through Radar datasets endpoints. ### Parameters - `domain: string` Domain name. - `query: DomainGetParams` - `date?: Array` Filters results by the specified array of dates. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `includeTopLocations?: boolean` Includes top locations in the response. - `limit?: number` Limits the number of objects returned in the response. - `name?: Array` Array of names used to label the series in the response. - `rankingType?: "POPULAR" | "TRENDING_RISE" | "TRENDING_STEADY"` The ranking type. - `"POPULAR"` - `"TRENDING_RISE"` - `"TRENDING_STEADY"` ### Returns - `DomainGetResponse` - `details_0: Details0` - `categories: Array` - `id: number` - `name: string` - `superCategoryId: number` - `bucket?: string` Only available in POPULAR ranking for the most recent ranking. - `rank?: number` - `top_locations?: Array` - `locationCode: string` - `locationName: string` - `rank: number` - `meta: Meta` - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const domain = await client.radar.ranking.domain.get('google.com'); console.log(domain.details_0); ``` #### Response ```json { "result": { "details_0": { "categories": [ { "id": 81, "name": "Content Servers", "superCategoryId": 26 } ], "bucket": "2000", "rank": 3, "top_locations": [ { "locationCode": "US", "locationName": "United States", "rank": 1 } ] }, "meta": { "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ] } }, "success": true } ``` ## Domain Types ### Domain Get Response - `DomainGetResponse` - `details_0: Details0` - `categories: Array` - `id: number` - `name: string` - `superCategoryId: number` - `bucket?: string` Only available in POPULAR ranking for the most recent ranking. - `rank?: number` - `top_locations?: Array` - `locationCode: string` - `locationName: string` - `rank: number` - `meta: Meta` - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. # Internet Services ## Get Internet services rank time series `client.radar.ranking.internetServices.timeseriesGroups(InternetServiceTimeseriesGroupsParamsquery?, RequestOptionsoptions?): InternetServiceTimeseriesGroupsResponse` **get** `/radar/ranking/internet_services/timeseries_groups` Retrieves Internet Services rank update changes over time. ### Parameters - `query: InternetServiceTimeseriesGroupsParams` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `name?: Array` Array of names used to label the series in the response. - `serviceCategory?: Array` Filters results by Internet service category. ### Returns - `InternetServiceTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ranking.internetServices.timeseriesGroups(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get top Internet services `client.radar.ranking.internetServices.top(InternetServiceTopParamsquery?, RequestOptionsoptions?): InternetServiceTopResponse` **get** `/radar/ranking/internet_services/top` Retrieves top Internet services based on their rank. ### Parameters - `query: InternetServiceTopParams` - `date?: Array` Filters results by the specified array of dates. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `name?: Array` Array of names used to label the series in the response. - `serviceCategory?: Array` Filters results by Internet service category. ### Returns - `InternetServiceTopResponse` - `meta: Meta` - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `rank: number` - `service: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ranking.internetServices.top(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "rank": 1, "service": "Google" } ] }, "success": true } ``` ## List Internet services categories `client.radar.ranking.internetServices.categories(InternetServiceCategoriesParamsquery?, RequestOptionsoptions?): InternetServiceCategoriesResponse` **get** `/radar/ranking/internet_services/categories` Retrieves the list of Internet services categories. ### Parameters - `query: InternetServiceCategoriesParams` - `date?: Array` Filters results by the specified array of dates. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `name?: Array` Array of names used to label the series in the response. ### Returns - `InternetServiceCategoriesResponse` - `categories_0: Array` - `name: string` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.ranking.internetServices.categories(); console.log(response.categories_0); ``` #### Response ```json { "result": { "categories_0": [ { "name": "Generative AI" } ] }, "success": true } ``` ## Domain Types ### Internet Service Timeseries Groups Response - `InternetServiceTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Internet Service Top Response - `InternetServiceTopResponse` - `meta: Meta` - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `rank: number` - `service: string` ### Internet Service Categories Response - `InternetServiceCategoriesResponse` - `categories_0: Array` - `name: string` # Traffic Anomalies ## Get latest Internet traffic anomalies `client.radar.trafficAnomalies.get(TrafficAnomalyGetParamsquery?, RequestOptionsoptions?): TrafficAnomalyGetResponse` **get** `/radar/traffic_anomalies` Retrieves the latest Internet traffic anomalies, which are signals that might indicate an outage. These alerts are automatically detected by Radar and manually verified by our team. ### Parameters - `query: TrafficAnomalyGetParams` - `asn?: number` Filters results by Autonomous System. Specify a single Autonomous System Number (ASN) as integer. - `dateEnd?: string` End of the date range (inclusive). - `dateRange?: string` Filters results by date range. - `dateStart?: string` Start of the date range (inclusive). - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `location?: string` Filters results by location. Specify an alpha-2 location code. - `offset?: number` Skips the specified number of objects before fetching the results. - `origin?: string` Filters results by origin. - `status?: "VERIFIED" | "UNVERIFIED"` - `"VERIFIED"` - `"UNVERIFIED"` - `type?: Array<"LOCATION" | "AS" | "ORIGIN">` Filters results by entity type (LOCATION, AS, or ORIGIN). - `"LOCATION"` - `"AS"` - `"ORIGIN"` ### Returns - `TrafficAnomalyGetResponse` - `trafficAnomalies: Array` - `startDate: string` - `status: string` - `type: string` - `uuid: string` - `asnDetails?: ASNDetails` - `asn: string` - `name: string` - `locations?: Locations` - `code: string` - `name: string` - `endDate?: string` - `locationDetails?: LocationDetails` - `code: string` - `name: string` - `originDetails?: OriginDetails` - `name: string` - `origin: string` - `visibleInDataSources?: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const trafficAnomaly = await client.radar.trafficAnomalies.get(); console.log(trafficAnomaly.trafficAnomalies); ``` #### Response ```json { "result": { "trafficAnomalies": [ { "startDate": "2023-08-02T23:15:00Z", "status": "UNVERIFIED", "type": "LOCATION", "uuid": "55a57f33-8bc0-4984-b4df-fdaff72df39d", "asnDetails": { "asn": "189", "name": "LUMEN-LEGACY-L3-PARTITION", "locations": { "code": "US", "name": "United States" } }, "endDate": "2019-12-27T18:11:19.117Z", "locationDetails": { "code": "US", "name": "United States" }, "originDetails": { "name": "us-east-1 Amazon Web Services", "origin": "amazon-us-east-1" }, "visibleInDataSources": [ "string" ] } ] }, "success": true } ``` ## Domain Types ### Traffic Anomaly Get Response - `TrafficAnomalyGetResponse` - `trafficAnomalies: Array` - `startDate: string` - `status: string` - `type: string` - `uuid: string` - `asnDetails?: ASNDetails` - `asn: string` - `name: string` - `locations?: Locations` - `code: string` - `name: string` - `endDate?: string` - `locationDetails?: LocationDetails` - `code: string` - `name: string` - `originDetails?: OriginDetails` - `name: string` - `origin: string` - `visibleInDataSources?: Array` # Locations ## Get top locations by total traffic anomalies `client.radar.trafficAnomalies.locations.get(LocationGetParamsquery?, RequestOptionsoptions?): LocationGetResponse` **get** `/radar/traffic_anomalies/locations` Retrieves the sum of Internet traffic anomalies, grouped by location. These anomalies are signals that might indicate an outage, automatically detected by Radar and manually verified by our team. ### Parameters - `query: LocationGetParams` - `dateEnd?: string` End of the date range (inclusive). - `dateRange?: string` Filters results by date range. - `dateStart?: string` Start of the date range (inclusive). - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `status?: "VERIFIED" | "UNVERIFIED"` - `"VERIFIED"` - `"UNVERIFIED"` ### Returns - `LocationGetResponse` - `trafficAnomalies: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const location = await client.radar.trafficAnomalies.locations.get(); console.log(location.trafficAnomalies); ``` #### Response ```json { "result": { "trafficAnomalies": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` ## Domain Types ### Location Get Response - `LocationGetResponse` - `trafficAnomalies: Array` - `clientCountryAlpha2: string` - `clientCountryName: string` - `value: string` A numeric string. # TCP Resets Timeouts ## Get TCP resets and timeouts summary `client.radar.tcpResetsTimeouts.summary(TCPResetsTimeoutSummaryParamsquery?, RequestOptionsoptions?): TCPResetsTimeoutSummaryResponse` **get** `/radar/tcp_resets_timeouts/summary` Retrieves the distribution of connection stage by TCP connections terminated within the first 10 packets by a reset or timeout. ### Parameters - `query: TCPResetsTimeoutSummaryParams` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `TCPResetsTimeoutSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `later_in_flow: string` Connection resets within the first 10 packets from the client, but after the server has received multiple data packets. - `no_match: string` All other connections. - `post_ack: string` Connection resets or timeouts after the server received both a SYN packet and an ACK packet, meaning the connection was successfully established. - `post_psh: string` Connection resets or timeouts after the server received a packet with PSH flag set, following connection establishment. - `post_syn: string` Connection resets or timeouts after the server received only a single SYN packet. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.tcpResetsTimeouts.summary(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "later_in_flow": "10", "no_match": "65", "post_ack": "5", "post_psh": "10", "post_syn": "10" } }, "success": true } ``` ## Get TCP resets and timeouts time series `client.radar.tcpResetsTimeouts.timeseriesGroups(TCPResetsTimeoutTimeseriesGroupsParamsquery?, RequestOptionsoptions?): TCPResetsTimeoutTimeseriesGroupsResponse` **get** `/radar/tcp_resets_timeouts/timeseries_groups` Retrieves the distribution of connection stage by TCP connections terminated within the first 10 packets by a reset or timeout over time. ### Parameters - `query: TCPResetsTimeoutTimeseriesGroupsParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `TCPResetsTimeoutTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `later_in_flow: Array` - `no_match: Array` - `post_ack: Array` - `post_psh: Array` - `post_syn: Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.tcpResetsTimeouts.timeseriesGroups(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "later_in_flow": [ "10" ], "no_match": [ "65" ], "post_ack": [ "5" ], "post_psh": [ "10" ], "post_syn": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Domain Types ### TCP Resets Timeout Summary Response - `TCPResetsTimeoutSummaryResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `later_in_flow: string` Connection resets within the first 10 packets from the client, but after the server has received multiple data packets. - `no_match: string` All other connections. - `post_ack: string` Connection resets or timeouts after the server received both a SYN packet and an ACK packet, meaning the connection was successfully established. - `post_psh: string` Connection resets or timeouts after the server received a packet with PSH flag set, following connection establishment. - `post_syn: string` Connection resets or timeouts after the server received only a single SYN packet. ### TCP Resets Timeout Timeseries Groups Response - `TCPResetsTimeoutTimeseriesGroupsResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `later_in_flow: Array` - `no_match: Array` - `post_ack: Array` - `post_psh: Array` - `post_syn: Array` - `timestamps: Array` # TLDs # Robots TXT # Top ## Get top domain categories by robots.txt files parsed `client.radar.robotsTXT.top.domainCategories(TopDomainCategoriesParamsquery?, RequestOptionsoptions?): TopDomainCategoriesResponse` **get** `/radar/robots_txt/top/domain_categories` Retrieves the top domain categories by the number of robots.txt files parsed. ### Parameters - `query: TopDomainCategoriesParams` - `date?: Array` Filters results by the specified array of dates. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `name?: Array` Array of names used to label the series in the response. - `userAgentCategory?: "AI"` Filters results by user agent category. - `"AI"` ### Returns - `TopDomainCategoriesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: number` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.robotsTXT.top.domainCategories(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "name": "News & Media", "value": 273 } ] }, "success": true } ``` ## Domain Types ### Top Domain Categories Response - `TopDomainCategoriesResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: number` # User Agents ## Get top user agents on robots.txt files `client.radar.robotsTXT.top.userAgents.directive(UserAgentDirectiveParamsquery?, RequestOptionsoptions?): UserAgentDirectiveResponse` **get** `/radar/robots_txt/top/user_agents/directive` Retrieves the top user agents on robots.txt files. ### Parameters - `query: UserAgentDirectiveParams` - `date?: Array` Filters results by the specified array of dates. - `directive?: "ALLOW" | "DISALLOW"` Filters results by robots.txt directive. - `"ALLOW"` - `"DISALLOW"` - `domainCategory?: Array` Filters results by domain category. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limit?: number` Limits the number of objects returned in the response. - `name?: Array` Array of names used to label the series in the response. - `userAgentCategory?: "AI"` Filters results by user agent category. - `"AI"` ### Returns - `UserAgentDirectiveResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: number` - `fully?: number` - `partially?: number` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.robotsTXT.top.userAgents.directive(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "top_0": [ { "name": "GPTBot", "value": 273, "fully": 235, "partially": 38 } ] }, "success": true } ``` ## Domain Types ### User Agent Directive Response - `UserAgentDirectiveResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo | null` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `top_0: Array` - `name: string` - `value: number` - `fully?: number` - `partially?: number` # Leaked Credentials ## Get HTTP authentication requests distribution by dimension `client.radar.leakedCredentials.summaryV2("COMPROMISED" | "BOT_CLASS"dimension, LeakedCredentialSummaryV2Paramsquery?, RequestOptionsoptions?): LeakedCredentialSummaryV2Response` **get** `/radar/leaked_credential_checks/summary/{dimension}` Retrieves an aggregated summary of HTTP authentication requests grouped by the specified dimension. ### Parameters - `dimension: "COMPROMISED" | "BOT_CLASS"` Specifies the attribute by which to group the results. - `"COMPROMISED"` - `"BOT_CLASS"` - `query: LeakedCredentialSummaryV2Params` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `compromised?: Array<"CLEAN" | "COMPROMISED">` Filters results by compromised credential status (clean vs. compromised). - `"CLEAN"` - `"COMPROMISED"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. ### Returns - `LeakedCredentialSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.leakedCredentials.summaryV2('COMPROMISED'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "CLEAN": "85.123456", "COMPROMISED": "14.876544" } }, "success": true } ``` ## Get time series distribution of HTTP authentication requests by dimension. `client.radar.leakedCredentials.timeseriesGroupsV2("COMPROMISED" | "BOT_CLASS"dimension, LeakedCredentialTimeseriesGroupsV2Paramsquery?, RequestOptionsoptions?): LeakedCredentialTimeseriesGroupsV2Response` **get** `/radar/leaked_credential_checks/timeseries_groups/{dimension}` Retrieves the distribution of HTTP authentication requests, grouped by the specified dimension over time. ### Parameters - `dimension: "COMPROMISED" | "BOT_CLASS"` Specifies the attribute by which to group the results. - `"COMPROMISED"` - `"BOT_CLASS"` - `query: LeakedCredentialTimeseriesGroupsV2Params` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `asn?: Array` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `checkResult?: Array<"CLEAN" | "USERNAME_LEAKED" | "USERNAME_PASSWORD_SIMILAR" | 2 more>` Filters results by leaked credential check result. - `"CLEAN"` - `"USERNAME_LEAKED"` - `"USERNAME_PASSWORD_SIMILAR"` - `"USERNAME_AND_PASSWORD_LEAKED"` - `"PASSWORD_LEAKED"` - `compromised?: Array<"CLEAN" | "COMPROMISED">` Filters results by compromised credential status (clean vs. compromised). - `"CLEAN"` - `"COMPROMISED"` - `continent?: Array` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `limitPerGroup?: number` Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category. - `location?: Array` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `name?: Array` Array of names used to label the series in the response. - `normalization?: "PERCENTAGE_CHANGE" | "MIN0_MAX"` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE_CHANGE"` - `"MIN0_MAX"` ### Returns - `LeakedCredentialTimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.leakedCredentials.timeseriesGroupsV2('COMPROMISED'); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "timestamps": [ "2023-08-08T10:15:00Z" ] } }, "success": true } ``` ## Domain Types ### Leaked Credential Summary V2 Response - `LeakedCredentialSummaryV2Response` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Record` ### Leaked Credential Timeseries Groups V2 Response - `LeakedCredentialTimeseriesGroupsV2Response` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `timestamps: Array` # Summary ## Get HTTP authentication requests by bot class summary `client.radar.leakedCredentials.summary.botClass(SummaryBotClassParamsquery?, RequestOptionsoptions?): SummaryBotClassResponse` **get** `/radar/leaked_credential_checks/summary/bot_class` Retrieves the distribution of HTTP authentication requests by bot class. ### Parameters - `query: SummaryBotClassParams` - `compromised?: Array<"CLEAN" | "COMPROMISED">` Filters results by compromised credential status (clean vs. compromised). - `"CLEAN"` - `"COMPROMISED"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryBotClassResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `bot: string` A numeric string. - `human: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.leakedCredentials.summary.botClass(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "bot": "10", "human": "10" } }, "success": true } ``` ## Get HTTP authentication requests by compromised credential status summary `client.radar.leakedCredentials.summary.compromised(SummaryCompromisedParamsquery?, RequestOptionsoptions?): SummaryCompromisedResponse` **get** `/radar/leaked_credential_checks/summary/compromised` Retrieves the distribution of HTTP authentication requests by compromised credential status. ### Parameters - `query: SummaryCompromisedParams` - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `SummaryCompromisedResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `CLEAN: string` A numeric string. - `COMPROMISED: string` A numeric string. ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.leakedCredentials.summary.compromised(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "summary_0": { "CLEAN": "10", "COMPROMISED": "10" } }, "success": true } ``` ## Domain Types ### Summary Bot Class Response - `SummaryBotClassResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `bot: string` A numeric string. - `human: string` A numeric string. ### Summary Compromised Response - `SummaryCompromisedResponse` - `meta: Meta` Metadata for the results. - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `summary_0: Summary0` - `CLEAN: string` A numeric string. - `COMPROMISED: string` A numeric string. # Timeseries Groups ## Get HTTP authentication requests by bot class time series `client.radar.leakedCredentials.timeseriesGroups.botClass(TimeseriesGroupBotClassParamsquery?, RequestOptionsoptions?): TimeseriesGroupBotClassResponse` **get** `/radar/leaked_credential_checks/timeseries_groups/bot_class` Retrieves the distribution of HTTP authentication requests by bot class over time. ### Parameters - `query: TimeseriesGroupBotClassParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `compromised?: Array<"CLEAN" | "COMPROMISED">` Filters results by compromised credential status (clean vs. compromised). - `"CLEAN"` - `"COMPROMISED"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `TimeseriesGroupBotClassResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `bot: Array` - `human: Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.leakedCredentials.timeseriesGroups.botClass(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "bot": [ "10" ], "human": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get HTTP authentication requests by compromised credential status time series `client.radar.leakedCredentials.timeseriesGroups.compromised(TimeseriesGroupCompromisedParamsquery?, RequestOptionsoptions?): TimeseriesGroupCompromisedResponse` **get** `/radar/leaked_credential_checks/timeseries_groups/compromised` Retrieves the distribution of HTTP authentication requests by compromised credential status over time. ### Parameters - `query: TimeseriesGroupCompromisedParams` - `aggInterval?: "15m" | "1h" | "1d" | "1w"` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"15m"` - `"1h"` - `"1d"` - `"1w"` - `botClass?: Array<"LIKELY_AUTOMATED" | "LIKELY_HUMAN">` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `"LIKELY_AUTOMATED"` - `"LIKELY_HUMAN"` - `dateEnd?: Array` End of the date range (inclusive). - `dateRange?: Array` Filters results by date range. For example, use `7d` and `7dcontrol` to compare this week with the previous week. Use this parameter or set specific start and end dates (`dateStart` and `dateEnd` parameters). - `dateStart?: Array` Start of the date range. - `format?: "JSON" | "CSV"` Format in which results will be returned. - `"JSON"` - `"CSV"` - `name?: Array` Array of names used to label the series in the response. ### Returns - `TimeseriesGroupCompromisedResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `CLEAN: Array` - `COMPROMISED: Array` - `timestamps: Array` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.radar.leakedCredentials.timeseriesGroups.compromised(); console.log(response.meta); ``` #### Response ```json { "result": { "meta": { "aggInterval": "FIFTEEN_MINUTES", "confidenceInfo": { "annotations": [ { "dataSource": "ALL", "description": "Cable cut in Tonga", "endDate": "2019-12-27T18:11:19.117Z", "eventType": "EVENT", "isInstantaneous": true, "linkedUrl": "https://example.com", "startDate": "2019-12-27T18:11:19.117Z" } ], "level": 0 }, "dateRange": [ { "endTime": "2022-09-17T10:22:57.555Z", "startTime": "2022-09-16T10:22:57.555Z" } ], "lastUpdated": "2019-12-27T18:11:19.117Z", "normalization": "PERCENTAGE", "units": [ { "name": "*", "value": "requests" } ] }, "serie_0": { "CLEAN": [ "10" ], "COMPROMISED": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Domain Types ### Timeseries Group Bot Class Response - `TimeseriesGroupBotClassResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `bot: Array` - `human: Array` - `timestamps: Array` ### Timeseries Group Compromised Response - `TimeseriesGroupCompromisedResponse` - `meta: Meta` Metadata for the results. - `aggInterval: "FIFTEEN_MINUTES" | "ONE_HOUR" | "ONE_DAY" | 2 more` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `"FIFTEEN_MINUTES"` - `"ONE_HOUR"` - `"ONE_DAY"` - `"ONE_WEEK"` - `"ONE_MONTH"` - `confidenceInfo: ConfidenceInfo` - `annotations: Array` - `dataSource: "ALL" | "AI_BOTS" | "AI_GATEWAY" | 22 more` Data source for annotations. - `"ALL"` - `"AI_BOTS"` - `"AI_GATEWAY"` - `"BGP"` - `"BOTS"` - `"CONNECTION_ANOMALY"` - `"CT"` - `"DNS"` - `"DNS_MAGNITUDE"` - `"DNS_AS112"` - `"DOS"` - `"EMAIL_ROUTING"` - `"EMAIL_SECURITY"` - `"FW"` - `"FW_PG"` - `"HTTP"` - `"HTTP_CONTROL"` - `"HTTP_CRAWLER_REFERER"` - `"HTTP_ORIGINS"` - `"IQI"` - `"LEAKED_CREDENTIALS"` - `"NET"` - `"ROBOTS_TXT"` - `"SPEED"` - `"WORKERS_AI"` - `description: string` - `endDate: string` - `eventType: "EVENT" | "GENERAL" | "OUTAGE" | 3 more` Event type for annotations. - `"EVENT"` - `"GENERAL"` - `"OUTAGE"` - `"PARTIAL_PROJECTION"` - `"PIPELINE"` - `"TRAFFIC_ANOMALY"` - `isInstantaneous: boolean` Whether event is a single point in time or a time range. - `linkedUrl: string` - `startDate: string` - `level: number` Provides an indication of how much confidence Cloudflare has in the data. - `dateRange: Array` - `endTime: string` Adjusted end of date range. - `startTime: string` Adjusted start of date range. - `lastUpdated: string` Timestamp of the last dataset update. - `normalization: "PERCENTAGE" | "MIN0_MAX" | "MIN_MAX" | 5 more` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `"PERCENTAGE"` - `"MIN0_MAX"` - `"MIN_MAX"` - `"RAW_VALUES"` - `"PERCENTAGE_CHANGE"` - `"ROLLING_AVERAGE"` - `"OVERLAPPED_PERCENTAGE"` - `"RATIO"` - `units: Array` Measurement units for the results. - `name: string` - `value: string` - `serie_0: Serie0` - `CLEAN: Array` - `COMPROMISED: Array` - `timestamps: Array`