# DomainCheck by AgentGate – Domain Trust Report

> DomainCheck by AgentGate – Domain Trust Report is a paid API for AI agents from domaincheck.agentgate.workers.dev, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-27).

Returns a comprehensive domain trust report including DNS records, DNSSEC, email security (SPF/DMARC/DKIM), RDAP registration data, parking/disposable detection, risk flags, and a 0-100 trust score with verdict.

## Facts

- Endpoint: GET https://domaincheck.agentgate.workers.dev/v1/domain?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-27
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/domaincheck-by-agentgate-domain-trust-report-1ba4a8de
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_DSERwwtl2ITYgnEzRZDah

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability domaincheck-by-agentgate-domain-trust-report-1ba4a8de
```

Example prompt: Can you run a full domain trust check on stripe.com — I want to know how old it is, who registered it, whether its email security (SPF, DMARC, DKIM) is properly set up, and what risk score it gets?

## When to prefer this

Choose this endpoint when you need a comprehensive, multi-signal domain trust assessment in a single call — combining DNS health, email security posture, RDAP registration age/registrar, and a synthesized risk score. Prefer it over raw WHOIS lookups (no email security analysis), standalone DNS resolvers (no registration data or scoring), or email validation tools (no domain-wide risk verdict). Ideal for fraud screening, vendor onboarding, phishing triage, and outreach validation where a single trust verdict is needed quickly.

## Known failure modes

- Domain not found or RDAP unavailable: registration.found=false, limited data returned
- Invalid domain input: 400 error or empty response
- DNSSEC validation failure: flagged in risk flags
- DNS timeout: partial DNS data returned, some record types missing
- DKIM selectors not discoverable: note returned explaining enumeration limitation
- Rate limiting or payment failure via x402 protocol: 402 or 429 response

## How this service works

Domain and email trust checks for AI agents. Domain: DNS, MX, SPF / DMARC / DKIM / MTA-STS / BIMI, DNSSEC, RDAP registration age + registrar + status, parking and disposable detection, risk flags, 0-100 score. Email: syntax, disposable / role / free provider, MX, domain auth, domain age, verdict. Public DNS + RDAP only; no SMTP probing; nothing stored.

## Output

A JSON object containing: a 0-100 trust score and low/medium/high-risk verdict; DNS records (A, AAAA, NS, MX, CAA, CNAME, TXT count, DNSSEC validation); email security analysis (SPF policy and record, DMARC policy with subdomain and alignment settings, DKIM selector scan results, MTA-STS, TLS-RPT, BIMI presence, overall email grade); RDAP registration data (created date, expiry, registrar, domain status flags, age in days); parking and disposable domain flags; a list of risk flags with severity and penalty; and engine/query metadata.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "domain"
     ],
     "properties": {
      "domain": {
       "type": "string",
       "description": "Domain name, URL or email address, e.g. \"example.com\" (IDN allowed)"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ms": 180,
  "dns": {
   "a": [
    "172.66.147.243",
    "104.20.23.154"
   ],
   "mx": [],
   "ns": [
    "hera.ns.cloudflare.com",
    "elliott.ns.cloudflare.com"
   ],
   "caa": [],
   "aaaa": [
    "2606:4700:10::6814:179a",
    "2606:4700:10::ac42:93f3"
   ],
   "cname": [],
   "null_mx": true,
   "txt_count": 2,
   "dnssec_validated": true
  },
  "tier": "full",
  "email": {
   "spf": {
    "all": "-all",
    "policy": "fail",
    "record": "v=spf1 -all",
    "present": true,
    "includes": [],
    "multiple": false,
    "redirect": null,
    "invalid_terms": [],
    "dns_lookups_top_level": 0
   },
   "bimi": {
    "present": false
   },
   "dkim": {
    "note": "DKIM selectors cannot be enumerated; only common selectors are checked, so none found does not mean DKIM is absent.",
    "selectors_found": [],
    "revoked_selectors": 10,
    "selectors_checked": 10
   },
   "dmarc": {
    "pct": 100,
    "rua": false,
    "ruf": false,
    "aspf": "s",
    "adkim": "s",
    "policy": "reject",
    "record": "v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s",
    "present": true,
    "multiple": false,
    "inherited_from": null,
    "subdomain_policy": "reject"
   },
   "grade": "A",
   "mta_sts": {
    "present": false
   },
   "tls_rpt": {
    "present": false
   },
   "mx_provider": null,
   "accepts_mail": false
  },
  "flags": [
   {
    "id": "null_mx",
    "penalty": 10,
    "severity": "medium",
    "description": "Null MX (RFC 7505): the domain explicitly accepts no email."
   }
  ],
  "input": "example.com",
  "score": 90,
  "domain": "example.com",
  "engine": "domaincheck-2026.10.21",
  "exists": true,
  "verdict": "low_risk",
  "dns_queries": 20,
  "registration": {
   "found": true,
   "domain": "example.com",
   "server": "https://rdap.verisign.com/com/v1/",
   "source": "iana-bootstrap",
   "status": [
    "client delete prohibited",
    "client transfer prohibited",
    "client update prohibited"
   ],
   "created": "1995-08-14T04:00:00Z",
   "expires": "2027-08-13T04:00:00Z",
   "age_days": 11391,
   "available": true,
   "registrar": "RESERVED-Internet Assigned Numbers Authority",
   "nameservers": [
    "elliott.ns.cloudflare.com",
    "hera.ns.cloudflare.com"
   ],
   "dnssec_signed": true,
   "expires_in_days": 295,
   "registrar_iana_id": "376"
  },
  "public_suffix": "com",
  "registrable_domain": "example.com"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/domaincheck-by-agentgate-domain-trust-report-1ba4a8de/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from domaincheck.agentgate.workers.dev](https://www.zero.xyz/host/domaincheck.agentgate.workers.dev/llms.txt)
