From 9fd39d2abaa48b9e3930ad07db4d24a057eafc01 Mon Sep 17 00:00:00 2001 From: Rebecca Tamachiro Date: Thu, 3 Jul 2025 14:33:41 +0100 Subject: [PATCH 1/5] Add intro sentence about account-level info available via API --- src/content/docs/dns/additional-options/analytics.mdx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/content/docs/dns/additional-options/analytics.mdx b/src/content/docs/dns/additional-options/analytics.mdx index b4e189adf50111..5ac897ba38aa1f 100644 --- a/src/content/docs/dns/additional-options/analytics.mdx +++ b/src/content/docs/dns/additional-options/analytics.mdx @@ -6,7 +6,7 @@ sidebar: --- -import { FeatureTable } from "~/components" +import { FeatureTable, Details } from "~/components" When you use Cloudflare DNS, you can access data about DNS queries through a variety of sources. @@ -18,6 +18,8 @@ DNS analytics allow you to evaluate data about DNS queries to your zone. You can [use the dashboard](#view-on-the-dashboard) to get insights quickly based on a [predefined set of dimensions](#available-dimensions), or [use the API](#explore-with-the-api) to have access to all fields available in the GraphQL DNS analytics schemas. +When using GraphQL, you also have the option to get data for DNS queries across all zones within a given Cloudflare account. + ### Availability and limits From 6ba8fe786069a2ef820a87736546822f3422d95f Mon Sep 17 00:00:00 2001 From: Rebecca Tamachiro Date: Thu, 3 Jul 2025 14:39:31 +0100 Subject: [PATCH 2/5] Add query examples and use cases under API section --- .../docs/dns/additional-options/analytics.mdx | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/src/content/docs/dns/additional-options/analytics.mdx b/src/content/docs/dns/additional-options/analytics.mdx index 5ac897ba38aa1f..d910e31657bcbc 100644 --- a/src/content/docs/dns/additional-options/analytics.mdx +++ b/src/content/docs/dns/additional-options/analytics.mdx @@ -68,6 +68,56 @@ The DNS analytics has two [schemas](/analytics/graphql-api/getting-started/query * `dnsAnalyticsAdaptive`: Retrieve information about individual DNS queries. * `dnsAnalyticsAdaptiveGroups`: Get reports on aggregate information only. +To get account-level data, you can set up queries similar to the following: + +
+ +``` +query GetLastNXDOMAINResponses { + viewer { + accounts(filter: { accountTag: "83a4527361bcdec24566fd7f837b6de5" }) { + dnsAnalyticsAdaptive( + limit: 10000 + filter: { + date_geq: "2025-06-16", + responseCode: "NXDOMAIN", + date_leq: "2025-06-18" + } + orderBy: [datetime_DESC] + ) { + zoneTag + queryName + responseCode + queryType + datetime + } + } + } +} +``` +
+ +
+ +``` +query GetTotalDNSQueryCount { + viewer { + accounts(filter: { accountTag: "83a4527361bcdec24566fd7f837b6de5" }) { + dnsAnalyticsAdaptiveGroups( + filter: { + date_geq: "2025-05-01" + date_leq: "2025-05-30" + } + limit: 1 + ) { + count + } + } + } +} +``` +
+ --- ## Logs From cc31ebcc5cfcdda19ddc5ba0f8bf6e125917fcca Mon Sep 17 00:00:00 2001 From: Rebecca Tamachiro Date: Thu, 3 Jul 2025 15:21:13 +0100 Subject: [PATCH 3/5] Separate zone and account limits in plans/index.json --- .../docs/dns/additional-options/analytics.mdx | 2 +- src/content/plans/index.json | 23 +++++++++++++++---- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/src/content/docs/dns/additional-options/analytics.mdx b/src/content/docs/dns/additional-options/analytics.mdx index d910e31657bcbc..741f4f78bc4a3b 100644 --- a/src/content/docs/dns/additional-options/analytics.mdx +++ b/src/content/docs/dns/additional-options/analytics.mdx @@ -124,4 +124,4 @@ query GetTotalDNSQueryCount { Logs let Enterprise customers view [detailed information](/logs/reference/log-fields/zone/dns_logs/) about individual DNS queries. -For help setting up Logpush, refer to [Get started with Logs](/logs/get-started/). +For help setting up Logpush, refer to [Get started with Logs](/logs/get-started/). \ No newline at end of file diff --git a/src/content/plans/index.json b/src/content/plans/index.json index 88625b1526cc47..281511d0c40366 100644 --- a/src/content/plans/index.json +++ b/src/content/plans/index.json @@ -690,20 +690,35 @@ "biz": "Yes", "ent": "Yes" }, - "maximum_duration": { - "title": "Maximum time interval", + "maximum_duration_zone": { + "title": "Maximum time interval (zone)", "free": "7 days", "pro": "31 days", "biz": "31 days", "ent": "62 days" }, - "historical_data": { - "title": "Historical data", + "maximum_duration_account": { + "title": "Maximum time interval (account)", + "free": "7 days", + "pro": "7 days", + "biz": "7 days", + "ent": "62 days" + }, + "historical_data_zone": { + "title": "Historical data (zone)", "free": "8 days", "pro": "31 days", "biz": "31 days", "ent": "62 days" + }, + "historical_data_account": { + "title": "Historical data (account)", + "free": "8 days", + "pro": "8 days", + "biz": "8 days", + "ent": "62 days" } + } }, "dnssec": { From 0e8cf5ae450f759efed4144b72ca105e1aa8a63c Mon Sep 17 00:00:00 2001 From: Rebecca Tamachiro Date: Thu, 3 Jul 2025 15:26:46 +0100 Subject: [PATCH 4/5] Make query examples open by default --- src/content/docs/dns/additional-options/analytics.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/content/docs/dns/additional-options/analytics.mdx b/src/content/docs/dns/additional-options/analytics.mdx index 741f4f78bc4a3b..fd04197c38f46a 100644 --- a/src/content/docs/dns/additional-options/analytics.mdx +++ b/src/content/docs/dns/additional-options/analytics.mdx @@ -70,7 +70,7 @@ The DNS analytics has two [schemas](/analytics/graphql-api/getting-started/query To get account-level data, you can set up queries similar to the following: -
+
``` query GetLastNXDOMAINResponses { @@ -97,7 +97,7 @@ query GetLastNXDOMAINResponses { ```
-
+
``` query GetTotalDNSQueryCount { From db0f1fdb7a08d738f9e15f8ada5fede812ad53e9 Mon Sep 17 00:00:00 2001 From: Rebecca Tamachiro Date: Fri, 4 Jul 2025 10:28:16 +0100 Subject: [PATCH 5/5] Use graphql code bolck and add graphql-api-explorer --- src/content/docs/dns/additional-options/analytics.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/content/docs/dns/additional-options/analytics.mdx b/src/content/docs/dns/additional-options/analytics.mdx index fd04197c38f46a..04133b6ec87985 100644 --- a/src/content/docs/dns/additional-options/analytics.mdx +++ b/src/content/docs/dns/additional-options/analytics.mdx @@ -72,7 +72,7 @@ To get account-level data, you can set up queries similar to the following:
-``` +```graphql graphql-api-explorer query GetLastNXDOMAINResponses { viewer { accounts(filter: { accountTag: "83a4527361bcdec24566fd7f837b6de5" }) { @@ -99,7 +99,7 @@ query GetLastNXDOMAINResponses {
-``` +```graphql graphql-api-explorer query GetTotalDNSQueryCount { viewer { accounts(filter: { accountTag: "83a4527361bcdec24566fd7f837b6de5" }) {