DNS & Infrastructure · DomScan product

DNS Resolver Comparison API

Compare answers from the Cloudflare and Google public recursive resolvers. These are two global-anycast DoH providers, not geographic probes or authoritative nameservers.

What you get

Compare answers from the Cloudflare and Google public recursive resolvers. These are two global-anycast DoH providers, not geographic probes or authoritative nameservers.

SynchronousBulkRESTMCPSDKInteractive tool

Choose this product when

Who it is for

Use the suite for troubleshooting, migration checks, infrastructure research, and security review.

Choose this product when

Choose this to compare answers from configured public recursive resolvers. It is not a geographic proof of global propagation.

What you get

Compare answers from the Cloudflare and Google public recursive resolvers. These are two global-anycast DoH providers, not geographic probes or authoritative nameservers.

Endpoints

Review the supported operations, inputs, outputs, execution modes, and response limits before integrating.

GET /v1/dns/propagation View API reference
POST /v1/dns/propagation/bulk View API reference
GET /v1/dns/servers View API reference

Credits and authentication

0-2 Authentication required. Check the operation reference for the exact cost and any per-item pricing.

Example operation

Use documented operations to collect, assess, enrich, verify, compare, protect, or monitor public evidence.

GET /v1/dns/propagation

Query Parameters

Parameter Type required
domain string required
type string
Allowed values AAAAACNAMEMXTXTNSSOA
Default A
optional
expected string optional

Response Fields

Field Type
domain string
record_type string
expected_value string | null
measurement_scope string
percentage_basis string
propagation_percentage number
fully_propagated boolean
consistent boolean
unique_values[] string[]
results[] object[]
results[] object
results[].server object
results[].server.name string
results[].server.ip string
results[].server.provider string
results[].server.location string
results[].server.country string
results[].server.scope string
results[].server.doh_endpoint string
results[].server.documentation_url string
results[].server.format string
results[].success boolean
results[].records[] string[]
results[].ttl integer | null
results[].response_time_ms integer
results[].error string | null
checked_at string
total_duration_ms integer
summary object
summary.total_servers integer
summary.successful integer
summary.failed integer
summary.matching_expected integer
propagation_summary object
propagation_summary.measurement_scope string
propagation_summary.percentage_basis string
propagation_summary.resolver_count integer
propagation_summary.successful_count integer
propagation_summary.failed_count integer
propagation_summary.propagation_percentage number
propagation_summary.fully_propagated boolean
propagation_summary.consistent boolean
propagation_summary.unique_value_count integer
propagation_summary.matching_expected_count integer
propagation_summary.expected_value_present boolean | null
propagation_summary.countries_checked integer
propagation_summary.providers_checked integer
propagation_summary.locations_checked integer
propagation_summary.slowest_resolver string | null
propagation_summary.slowest_response_ms integer | null
propagation_summary.fastest_response_ms integer | null
propagation_summary.disagreement_count integer
propagation_summary.confidence string

Example Request

curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/dns/propagation?domain=example.com&type=A&expected=192.0.2.1"

Example Response

{
  "domain": "example.com",
  "record_type": "A",
  "expected_value": "example",
  "measurement_scope": "configured_recursive_resolvers",
  "percentage_basis": "expected_value_match",
  "propagation_percentage": 0.5,
  "fully_propagated": false,
  "consistent": false,
  "unique_values": [
    "example"
  ],
  "results": [
    {
      "server": {
        "name": "example",
        "ip": "192.0.2.1",
        "provider": "example",
        "location": "Global anycast",
        "country": "GLOBAL",
        "scope": "global-anycast",
        "doh_endpoint": "https://example.com",
        "documentation_url": "https://example.com",
        "format": "dns-json"
      },
      "success": true,
      "records": [
        "example"
      ],
      "ttl": 1,
      "response_time_ms": 1,
      "error": "example"
    }
  ],
  "checked_at": "2026-08-27T12:00:00Z",
  "total_duration_ms": 1,
  "summary": {
    "total_servers": 1,
    "successful": 1,
    "failed": 1,
    "matching_expected": 1
  },
  "propagation_summary": {
    "measurement_scope": "configured_recursive_resolvers",
    "percentage_basis": "expected_value_match",
    "resolver_count": 1,
    "successful_count": 1,
    "failed_count": 1,
    "propagation_percentage": 0.5,
    "fully_propagated": false,
    "consistent": false,
    "unique_value_count": 1,
    "matching_expected_count": 1,
    "expected_value_present": false,
    "countries_checked": 1,
    "providers_checked": 1,
    "locations_checked": 1,
    "slowest_resolver": "example",
    "slowest_response_ms": 1,
    "fastest_response_ms": 1,
    "disagreement_count": 1,
    "confidence": "high"
  }
}

Limits and evidence boundaries

Coverage is bounded by the documented inputs, budgets, sources, and response limits.
Unknown means the requested fact could not be determined from the available evidence.
Bulk operations process multiple supported inputs while preserving documented item-level outcomes.
Evidence can change over time; use timestamps and freshness fields when provided.
Results describe observed public evidence and its provenance.

Reviewed 2026-08-22

Frequently asked questions

Where can I find the DNS Resolver Comparison request and response reference?

Use the API reference for DNS Resolver Comparison to review parameters, response fields, examples, status codes, and supported operation modes.

How should I interpret unknown or incomplete results from DNS Resolver Comparison?

Unknown or partial results mean that the requested evidence could not be fully determined. Keep the result state, confidence, freshness, and limitations in downstream decisions.

How is DNS Resolver Comparison priced?

Pricing depends on the operation and execution mode. Check the endpoint reference for the current credit cost, authentication requirement, and per-item rules.

Used by people at amazing companies

InstantOutseerMongoDBRespondentSage Expense ManagementInstantlyD.R. HortonWhatConvertsAdobeMotionElementsLLM Pulse