DomaineeDocs

Domain Connect Checker API Reference

Endpoint reference for GET /v1/tools/domain-connect-checker: parameters, JSON response schema, error codes, and per-IP rate limits. No API key required.

GEThttps://api.domainee.dev/v1/tools/domain-connect-checker?domain=example.com

Check whether a domain's DNS provider implements the Domain Connect protocol, read live from the _domainconnect TXT record and the provider's settings endpoint. Reports the provider and whether it offers the synchronous flow (a signed redirect with no token exchanged, the one that works in practice) or only the asynchronous OAuth flow. One-click setup also needs the provider to have synced and enabled the service's template.

Free. No API key required. CORS-enabled. Rate-limited per IP at 30/min and 500/day.

Parameters

NameInTypeDescription
domainrequiredquerystring
Domain to check. The zone apex is used for discovery.
example: example.com

Example request

curl
curl -s "https://api.domainee.dev/v1/tools/domain-connect-checker?domain=example.com" | jq

Example response

response.json
{
  "ok": true,
  "data": {
    "domain": "example.com",
    "supported": true,
    "discoveryHost": "api.domainconnect.example-dns.com",
    "dnsProvider": "Example DNS",
    "providerId": "example-dns.com",
    "flows": {
      "synchronous": true,
      "asynchronous": false
    }
  }
}

Other languages

fetch.js
const res = await fetch("https://api.domainee.dev/v1/tools/domain-connect-checker?domain=example.com");
const { ok, data } = await res.json();
requests.py
import requests
r = requests.get(
    "https://api.domainee.dev/v1/tools/domain-connect-checker",
    params={"domain":"example.com"},
)
data = r.json()["data"]

Rate limits & errors

  • 30 requests/minute and 500 requests/day per IP. Exceeding either returns HTTP 429 with a Retry-After header.
  • All responses are JSON with the envelope { "ok": true, "data": {...} } on success or { "ok": false, "error": { "code", "message" } } on failure.
  • code values are stable; safe to switch on programmatically. message is human-friendly and may change.

Interpreting supported

supported: true means the domain's DNS provider implements the Domain Connect protocol. It does not mean a given service can use it: the provider only applies templates it has already synced from the shared Domain-Connect/Templates repository, so the service also needs a published, merged and synced template.

Treat the flows object as the practical answer. synchronous: true is the case worth building around, since it exchanges no token. It still needs each provider to sync and enable your template, and some providers (Cloudflare among them) ask for an onboarding email before they do. A provider offering only the asynchronous flow requires an explicit OAuth setup with that provider before one-click works.

See also

On this page