# Otto AI Domain Age Lookup

> Otto AI Domain Age Lookup is a paid API for AI agents from x402.ottoai.services, paid per call via x402, $0.001/call, status unknown (last checked 2026-09-14).

Returns the registration age, creation date, expiry date, and days-until-expiry for any registrable domain name via RDAP lookup.

## Facts

- Endpoint: GET https://x402.ottoai.services/domain-age
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/otto-ai-domain-age-lookup-a4a2e927
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_0LPZmgWzKDVaczJNl5rEJ

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 otto-ai-domain-age-lookup-a4a2e927
```

Example prompt: How old is coinbase.com — when was it first registered and when does it expire?

## When to prefer this

Use this endpoint when you need to quickly assess the age or registration status of a specific domain — e.g. for fraud detection (is this a newly registered phishing domain?), due diligence (how established is this company's web presence?), or competitive intelligence. It is a cheap ($0.001) pay-per-call lookup with no subscription required, making it ideal for on-demand, single-domain checks in automated pipelines.

## Known failure modes

- ccTLD domains without RDAP support return 503 (not charged)
- Unregistered domains return registered: false with no date fields
- Invalid domain format may return a validation error
- RDAP registry downtime may cause transient 5xx errors
- Domains with redacted WHOIS may have missing creation/expiry data

## How this service works

Domain age and registration intel from authoritative RDAP/WHOIS records: exact creation date, age in days and years, expiration date and days-until-expiry. The fast trust and risk signal agents use to vet a counterparty, link, or sender and to flag newly-registered or soon-to-expire domains. Returns structured JSON, keyless, pay-per-call. ccTLDs without RDAP return an uncharged 503.

## Output

A JSON object with the domain name, age in days and years, ISO creation and expiry timestamps, days until expiry, registration status (true/false), and metadata including freshness timestamp and whether the result is degraded. ccTLDs without RDAP support return a 503 (uncharged).

## 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": "Registrable domain to check (e.g. coinbase.com). ccTLDs without RDAP return 503 uncharged."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "status"
     ],
     "properties": {
      "data": {},
      "meta": {
       "type": "object"
      },
      "reason": {
       "type": "string",
       "description": "status=unavailable only; every >=400 is UNCHARGED"
      },
      "status": {
       "enum": [
        "success",
        "unavailable"
       ],
       "type": "string"
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "data": {
   "domain": "coinbase.com",
   "ageDays": 5172,
   "ageYears": 14.2,
   "createdAt": "2012-04-26T00:00:00Z",
   "expiresAt": "2027-04-26T00:00:00Z",
   "registered": true,
   "generatedAt": "2026-06-24T12:00:00.000Z",
   "daysUntilExpiry": 306
  },
  "meta": {
   "degraded": false,
   "validUntil": "",
   "generatedAt": "",
   "stalenessSec": 0
  },
  "status": "success"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/otto-ai-domain-age-lookup-a4a2e927/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.ottoai.services](https://www.zero.xyz/host/x402.ottoai.services/llms.txt)
