Référence API

API Recherche DNS

Effectuez des recherches DNS pour n'importe quel type d'enregistrement. Utilisez cette référence pour choisir une opération et intégrer son contrat de réponse documenté.

Opérations

GET /v1/dns/all Voir la référence API
GET /v1/dns/history Voir la référence API

GET /v1/dns

Opération: getDnsRecords Crédits et authentification: 1 Authentification requise
GET /v1/dns

Paramètres de Requête

Paramètre Type requis
domain string requis
type string
Valeurs autorisées AAAAAMXNSTXTSOACNAMECAAPTRSRV
Défaut A
optionnel

Champs de Réponse

Champ Type
domain string
record_type string
records[] object[]
records[] object
records[].type string
records[].name string
records[].data string
records[].ttl integer
records[].priority integer
records[].classification string
status string
dnssec_validated boolean
query_time_ms integer
checked_at string
warnings[] object[]
warnings[] object
warnings[].code string
warnings[].message string
warnings[].severity string

Exemple de Requête

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

Exemple de Réponse

{
  "domain": "google.com",
  "record_type": "TXT",
  "records": [
    {
      "type": "TXT",
      "name": "google.com",
      "data": "v=spf1 include:_spf.google.com ~all",
      "ttl": 300,
      "classification": "spf"
    },
    {
      "type": "TXT",
      "name": "google.com",
      "data": "google-site-verification=abc123",
      "ttl": 300,
      "classification": "verification"
    }
  ],
  "status": "success",
  "dnssec_validated": false,
  "query_time_ms": 37,
  "checked_at": "2026-04-18T21:00:00Z",
  "warnings": [
    {
      "code": "TXT_MULTIPLE_RESPONSES",
      "message": "Domain publishes multiple TXT records; use classification to isolate the security ones.",
      "severity": "info"
    }
  ],
  "meta": {
    "served_by": "pop=unknown country=unknown"
  }
}

GET /v1/dns/all

Opération: getAllDnsRecords Crédits et authentification: 2 Authentification requise
GET /v1/dns/all

Paramètres de Requête

Paramètre Type requis
domain string requis
wildcard_probe string
Valeurs autorisées 1
optionnel

Champs de Réponse

Champ Type
domain string
records object
summary object
summary.has_a boolean
summary.has_aaaa boolean
summary.has_ns boolean
summary.has_mx boolean
summary.has_txt boolean
summary.has_https boolean
summary.has_svcb boolean
summary.ipv6_parity string
warnings[] object[]
warnings[] object
warnings[].code string
warnings[].message string
warnings[].severity string
wildcard object
wildcard.suspected boolean
wildcard.probe_label string
query_time_ms integer
checked_at string

Exemple de Requête

curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/dns/all?domain=example.com&wildcard_probe=example.com"

Exemple de Réponse

{
  "domain": "openai.com",
  "records": {
    "A": [
      {
        "type": "A",
        "name": "openai.com",
        "data": "104.18.33.45",
        "ttl": 300
      }
    ],
    "AAAA": [
      {
        "type": "AAAA",
        "name": "openai.com",
        "data": "2606:4700::6812:212d",
        "ttl": 300
      }
    ],
    "MX": [
      {
        "type": "MX",
        "name": "openai.com",
        "data": "aspmx.l.google.com",
        "ttl": 300,
        "priority": 1
      }
    ],
    "NS": [
      {
        "type": "NS",
        "name": "openai.com",
        "data": "ns1-02.azure-dns.com",
        "ttl": 172800
      },
      {
        "type": "NS",
        "name": "openai.com",
        "data": "ns2-02.azure-dns.net",
        "ttl": 172800
      }
    ],
    "TXT": [
      {
        "type": "TXT",
        "name": "openai.com",
        "data": "v=spf1 include:_spf.google.com ~all",
        "ttl": 300,
        "classification": "spf"
      },
      {
        "type": "TXT",
        "name": "openai.com",
        "data": "v=TLSRPTv1; rua=mailto:[email protected]",
        "ttl": 300,
        "classification": "tls_rpt"
      }
    ]
  },
  "summary": {
    "has_a": true,
    "has_aaaa": true,
    "has_ns": true,
    "has_mx": true,
    "has_txt": true,
    "has_https": false,
    "has_svcb": false,
    "ipv6_parity": "full"
  },
  "warnings": [
    {
      "code": "MX_PRIORITY_SHARED",
      "message": "Multiple MX hosts share the same priority.",
      "severity": "info"
    }
  ],
  "wildcard": {
    "suspected": false,
    "probe_label": "_domscan-probe-4f6a2c.openai.com"
  },
  "query_time_ms": 82,
  "checked_at": "2026-04-18T21:00:00Z"
}

GET /v1/dns/history

Opération: getDnsHistory Crédits et authentification: 3 Authentification requise
GET /v1/dns/history

Paramètres de Requête

Paramètre Type requis
domain string requis
type string optionnel
from string optionnel
to string optionnel
limit integer
Défaut 100
optionnel

Champs de Réponse

Champ Type
domain string
history[] object[]
history[] object
history[].date string
history[].record_type string
history[].changes[] object[]
history[].changes[] object
history[].changes[].action string
history[].changes[].value string
history[].changes[].ttl integer | null
current_records object
first_seen string | null
last_seen string | null
total_changes integer
record_types_tracked[] string[]
beta_notice string
meta object
meta.note string
meta.data_source string
meta.history_limit integer
meta.history_rows_evaluated integer
meta.history_rows_truncated boolean
meta.removal_confirmation_days integer
meta.current_records_scope string

Exemple de Requête

curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/dns/history?domain=example.com&type=A&from=2026-01-01&to=2026-04-15&limit=10"

Exemple de Réponse

{
  "domain": "example.com",
  "history": [
    {
      "date": "2026-04-13",
      "record_type": "A",
      "changes": [
        {
          "action": "added",
          "value": "104.20.23.154"
        },
        {
          "action": "added",
          "value": "172.66.147.243"
        },
        {
          "action": "removed",
          "value": "104.18.26.120"
        }
      ]
    }
  ],
  "current_records": {
    "A": [
      "104.20.23.154",
      "172.66.147.243"
    ]
  },
  "first_seen": "2026-01-01",
  "last_seen": "2026-04-13",
  "total_changes": 3,
  "record_types_tracked": [
    "A"
  ],
  "beta_notice": "Beta observation log. Coverage comes only from successful DomScan DNS lookups. Dates are day-level, changes between lookups can be missed, and no external passive DNS sources are included.",
  "meta": {
    "note": "Lookup-driven DomScan observations only. Dates are day-level, gaps can miss changes, and no external passive DNS sources are included.",
    "data_source": "internal",
    "history_limit": 100,
    "history_rows_evaluated": 3,
    "history_rows_truncated": false,
    "removal_confirmation_days": 2,
    "current_records_scope": "all_stored_current_records"
  }
}

Ressources de référence