Geliştirici referansı
DNS Geçmişi
Alan adı analizi için DomScan API: Önceki başarılı DomScan sorgularında günlük düzeyde gözlemlenen DNS değerlerini inceleyin.
DNS Geçmişi
Önceki başarılı DomScan sorgularında günlük düzeyde gözlemlenen DNS değerlerini inceleyin. Beta kapsamı, internet genelini kapsayan bir pasif DNS arşivi değildir.
GET
/v1/dns/history
Kredi: 3
Sorgu parametreleri
| Parametre | Tür | gerekli |
|---|---|---|
| domain | string | gerekli |
| type | string | isteğe bağlı |
| from | string | isteğe bağlı |
| to | string | isteğe bağlı |
| limit |
integer
Varsayılan
100
|
isteğe bağlı |
| cursor | string | isteğe bağlı |
Yanıt alanları
| Alan | Tür |
|---|---|
has_more |
boolean |
next_cursor |
string | null |
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 |
Örnek istek
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"const response = await fetch("https://domscan.net/v1/dns/history?domain=example.com&type=A&from=2026-01-01&to=2026-04-15&limit=10", {
headers: { "X-API-Key": process.env.DOMSCAN_API_KEY },
});
const data = await response.json();
console.log(data);import os
import requests
response = requests.get(
"https://domscan.net/v1/dns/history?domain=example.com&type=A&from=2026-01-01&to=2026-04-15&limit=10",
headers={"X-API-Key": os.environ["DOMSCAN_API_KEY"]},
)
print(response.json())package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest(http.MethodGet, "https://domscan.net/v1/dns/history?domain=example.com&type=A&from=2026-01-01&to=2026-04-15&limit=10", nil)
if err != nil {
panic(err)
}
req.Header.Set("X-API-Key", os.Getenv("DOMSCAN_API_KEY"))
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
data, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(resp.Status, string(data))
}require "json"
require "net/http"
uri = URI("https://domscan.net/v1/dns/history?domain=example.com&type=A&from=2026-01-01&to=2026-04-15&limit=10")
request = Net::HTTP::Get.new(uri)
request["X-API-Key"] = ENV.fetch("DOMSCAN_API_KEY")
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
http.request(request)
end
puts JSON.pretty_generate(JSON.parse(response.body))Örnek yanıt
{
"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"
}
}
HTTP durum kodları
200OK400Hatalı İstek401Yetkisiz402Ödeme Gerekli429Çok Fazla İstek