Domain lookup
Domain lookup in one call: DNS records (A, AAAA, MX, TXT, NS, CNAME, SOA, CAA with TTLs), registry RDAP registration data (registrar, created, updated and expiry dates, status, nameservers, DNSSEC) and the TLS certificate (issuer, names, validity, days left, chain verified). Use to check a domain before linking to, buying or trusting it. No registrant contact data. Typical response 1 to 2 s. Failed calls are not charged.
Try one call free
5 free calls a day per address, no payment. Demo inputs travel in the web address, which logs can record, so use the paid route for anything private.
The result appears here.
Example
Request body for POST /v1/domain-lookup:
{
"domain": "quantagentshop.com",
"parts": [
"registration",
"tls"
]
}
Response:
{
"domain": "quantagentshop.com",
"exists": true,
"dns": null,
"registration": {
"registered": true,
"registrar": "Cloudflare, Inc.",
"registrar_iana_id": "1910",
"created": "2026-10-22T05:23:20Z",
"updated": "2026-10-22T05:23:21Z",
"expires": "2027-10-22T05:23:20Z",
"status": [
"client transfer prohibited"
],
"nameservers": [
"anna.ns.cloudflare.com",
"greg.ns.cloudflare.com"
],
"dnssec": false,
"rdap_url": "https://rdap.verisign.com/com/v1/domain/quantagentshop.com",
"retrieved_at": "2026-10-22T09:00:00+00:00"
},
"tls": {
"ip": "104.21.0.1",
"verified": true,
"error": null,
"subject_cn": "quantagentshop.com",
"sans": [
"quantagentshop.com",
"*.quantagentshop.com"
],
"issuer": "Google Trust Services WE1",
"not_before": "2026-10-22T04:00:00Z",
"not_after": "2027-01-20T04:00:00Z",
"days_left": 90,
"key": "EC secp256r1",
"tls_version": "TLSv1.3",
"cipher": "TLS_AES_256_GCM_SHA384"
},
"unavailable": [],
"checked_at": "2026-10-22T09:00:00+00:00"
}
Call it with x402
Any x402 client works: call, read the price in the 402, pay, call again. With curl you see the terms:
curl -i -X POST https://quantagentshop.com/v1/domain-lookup \
-H 'content-type: application/json' \
-d '{"domain": "quantagentshop.com", "parts": ["registration", "tls"]}'
HTTP/1.1 402 Payment Required
PAYMENT-REQUIRED: (the terms below, base64)
{"x402Version": 2, "error": "payment_required", "accepts": [{"scheme": "exact", "network": "eip155:8453", "amount": "1300", "payTo": "0x4d8d8D4f04512029172e0176744Eec4AE5238309", ...}], ...}
# amount is in millionths of a USDC. Pay one of accepts, then send the same request again with the PAYMENT-SIGNATURE header.
In JavaScript, @x402/fetch pays and retries for you:
// npm install @x402/fetch @x402/evm viem
import { wrapFetchWithPayment, x402Client } from "@x402/fetch";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const signer = privateKeyToAccount(process.env.EVM_PRIVATE_KEY); // a wallet holding a little USDC
const client = new x402Client().register("eip155:*", new ExactEvmScheme(signer));
const fetchWithPayment = wrapFetchWithPayment(fetch, client);
const res = await fetchWithPayment("https://quantagentshop.com/v1/domain-lookup", {
method: "POST",
headers: { "content-type": "application/json" },
body: JSON.stringify({"domain": "quantagentshop.com", "parts": ["registration", "tls"]}),
});
console.log(await res.json());
Use it over MCP
Add the remote MCP server, then call quantagentshop_domain_lookup. The free quantagentshop_quote
tool gives the price and pay-to address and checks your arguments before you pay.
{
"mcpServers": {
"quantagentshop": {
"url": "https://quantagentshop.com/mcp"
}
}
}
Terms, privacy and sources are on the policies page; live figures on the status page.