WHOIS- en RDAP-opvraging API
Registratiegegevens van elk domein, IP-adres of AS-nummer, rechtstreeks uit het gezaghebbende register via RDAP. Registrar, nameservers, DNSSEC, vervaldata en abuse-contacten als eenvoudige JSON.
Heb je geen API key?
Meld je aan bij je account om je API keys aan te maken en te beheren.
Integratiegids
Kopieer een snippet, vervang je API key, draaien. Werkt in elke HTTP-client — voorbeelden hieronder in cURL, JavaScript en Python.
/api/whoishttps://www.apipick.comRegistration data for a domain, IP address, or AS number
querystringverplichtA domain name, IPv4/IPv6 address, or AS number. The type is detected automatically. github.com
curl -X GET "https://www.apipick.com/api/whois" \
-H "x-api-key: YOUR_API_KEY"{
"query": "github.com",
"type": "domain",
"found": true,
"domain": "github.com",
"unicode_domain": null,
"nameservers": [
"dns1.p08.nsone.net",
"ns-421.awsdns-52.com"
],
"dnssec": false,
"handle": "1264983250_DOMAIN_COM-VRSN",
"status": [
"client delete prohibited",
"client transfer prohibited"
],
"country": null,
"registrar": "MarkMonitor Inc.",
"registered_at": "2007-10-09T18:20:50Z",
"updated_at": "2024-09-07T09:16:32Z",
"expires_at": "2026-10-09T18:20:50Z",
"contacts": [
{
"roles": [
"registrar"
],
"handle": "292",
"name": "MarkMonitor Inc.",
"organization": null,
"email": null,
"phone": null,
"address": null,
"country": null
}
],
"source": "RDAP (IANA bootstrap via rdap.org)",
"credits_used": 2,
"remaining_credits": 98
}Gebouwd voor praktijksituaties
Vervaldatumbewaking
Bevraag je domeinportfolio periodiek en waarschuw vóór verlengingsdata. Live registergegevens, dus niets veroudert door een cachecyclus.
Due diligence op domeinen
Controleer registratieleeftijd, registrar en statuscodes voordat je het domein van een tegenpartij vertrouwt of een leverancier goedkeurt.
Abuse-meldingen
Herleid een IP of ASN tot de houder en het abuse-contact, zodat geautomatiseerde meldingen in een mailbox belanden die iemand daadwerkelijk leest.
Verrijking voor agents
Eén parameter dekt domeinen, IP's en ASN's, waardoor het voor een LLM één heldere tooldefinitie is.
Responsvelden
| Veld | Type | Beschrijving |
|---|---|---|
| type | string | Gedetecteerd opvraagtype: domain, ip of autnum |
| found | boolean | False wanneer het object niet geregistreerd of niet toegewezen is |
| registrar | string | null | Verantwoordelijke registrar (domeinen) |
| registered_at | string | null | Registratiedatum in ISO 8601 |
| expires_at | string | null | Vervaldatum in ISO 8601 (domeinen) |
| updated_at | string | null | ISO 8601-datum waarop het record laatst is gewijzigd |
| status | string[] | EPP-statuscodes, bijv. client transfer prohibited |
| nameservers | string[] | Gedelegeerde nameservers (domeinen) |
| dnssec | boolean | null | Of de delegatie met DNSSEC is ondertekend |
| cidr | string[] | CIDR-blokken van de toewijzing (IP-opvragingen) |
| asn | integer | null | Autonoom systeemnummer (ASN-opvragingen) |
| contacts[] | object[] | Afgevlakte jCard-entiteiten met rollen, organisatie, e-mail en telefoon |
| credits_used | integer | Voor dit verzoek afgeschreven credits |
| remaining_credits | integer | Resterende credits in je account |
Rate limits
Throttling is per API key, een verschuivend venster van 60 seconden. Bereik je de limiet, dan krijg je een nette 429 met een Retry-After-header.
30req/min
Per API key, per endpoint. Verschuivend venster van 60 seconden.
3concurrent
Max. gelijktijdig lopende verzoeken per API key.
X-RateLimit-LimitMaximaal toegestane verzoeken per minuutX-RateLimit-RemainingResterende verzoeken in het huidige vensterX-RateLimit-ResetSeconden tot het huidige venster opnieuw startRetry-AfterSeconden te wachten voor opnieuw proberen (alleen bij 429)HTTP/1.1 429 Too Many Requests
Retry-After: 12
X-RateLimit-Limit: 30
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 12
{
"error": "rate_limit_exceeded",
"message": "Rate limit exceeded: 30 requests/minute per API key. Retry after 12s.",
"retry_after": 12
}Gegevensbron en licentie
De records komen uit het gezaghebbende register van elk object — Verisign, Nominet en de overige registryoperators voor domeinen; ARIN, RIPE NCC, APNIC, LACNIC en AFRINIC voor IP-bereiken en AS-nummers — opgezocht via de RDAP-bootstrap van IANA. Er wordt niets gecachet of opnieuw gepubliceerd: je ziet wat het register op het moment van de aanvraag teruggeeft.
Veelgestelde vragen
V: Waarin verschilt dit van klassieke WHOIS?
A: RDAP is de door de IETF ontworpen vervanger van WHOIS op poort 43. Waar WHOIS vrije tekst teruggeeft die per register verschilt en gescrapet moet worden, geeft RDAP gestructureerde JSON met een standaardschema, via HTTPS en met correcte 404's. Wij bevragen het gezaghebbende register via de bootstrap van IANA en vlakken de jCard-contactblokken af tot gewone objecten.
V: Waarom ontbreken de contactgegevens van de houder meestal?
A: Sinds de AVG maskeren de meeste gTLD-registers naam, e-mail en adres van de houder in de openbare RDAP en publiceren ze alleen de verantwoordelijke registrar plus een abuse-contact. Die maskering is het antwoord van het register, geen gebrek in deze API — geen enkele WHOIS-aanbieder kan gegevens tonen die het register niet publiceert.
V: Werkt het ook voor IP-adressen en AS-nummers?
A: Ja. Geef een IPv4- of IPv6-adres mee voor het toegewezen netwerk, de CIDR-blokken, de houder en de RIR-handle; geef AS13335 of 13335 mee voor de AS-naam met de houder-, abuse- en technische contacten. Het opvraagtype wordt uit de invoer afgeleid, dus één parameter dekt alle drie.
V: Wat levert een niet-geregistreerd domein op?
A: HTTP 200 met found: false. Dat is een echt antwoord — zo controleer je immers beschikbaarheid — en kost dus de gebruikelijke credit. Alleen een storing bovenstrooms (time-out van het register, rate limit) geeft een status buiten 2xx, en die wordt nooit in rekening gebracht.
V: Hoe actueel is de vervaldatum?
A: Die komt op het moment van de aanvraag rechtstreeks uit het RDAP-record van het register zelf, zonder cachelaag ertussen, en is dus net zo actueel als het register. Daarmee is hij geschikt voor vervaldatumbewaking — bevraag je portfolio dagelijks en waarschuw op basis van expires_at.