# Domain Availability

Answers “Can I register this domain?” with a tri-state result: available, unavailable, or unknown. Network, policy, and registry failures are never converted into available results.

## Discovery

- Identifier: `domain.availability`
- Version: `v1`
- Category: Domain intelligence
- Status: `live-paid`
- Access: `x402-$0.001-per-domain`
- Human docs: https://dnsskills.md/domain-availability
- Agent Markdown: https://dnsskills.md/domain-availability.md
- SKILL.md: https://dnsskills.md/domain-availability/SKILL.md
- OpenAPI: https://dnsskills.md/openapi.yaml
- Public GitHub mirror: https://github.com/easydns/dns-agent-skills
- Web UI: https://app.domainhelp.com/domain-lookup

- Compatibility aliases: `domain search`, `RDAP availability`, `WHOIS availability`

## JSON Schemas

- Bundle: https://dnsskills.md/schemas/domain-availability.schema.json
- Input: https://dnsskills.md/schemas/domain-availability.input.schema.json
- Output: https://dnsskills.md/schemas/domain-availability.output.schema.json
- Payment required: https://dnsskills.md/schemas/x402-payment-required.schema.json
- Payment response: https://dnsskills.md/schemas/x402-payment-response.schema.json

## Agent Invocation

Use the execution API endpoints below. Do not post to browser Web UI form routes; those routes are for humans and may require CSRF and reCAPTCHA.

- `GET/POST https://app.domainhelp.com/api/v1/domain-availability`
  - Status: `live-x402`
  - Response modes: `json`
- `GET https://app.domainhelp.com/api/v1/domain-availability/{domain}`
  - Status: `live-x402`
  - Response modes: `json`

## Input Contract

Provide domain for one lookup, or domains as a unique array of 1–100 names for bulk lookup. The x402 price is $0.001 each for 1–9, $0.0008 each for 10–49, and $0.0005 each for 50–100.

## Output Contract

Returns available as true, false, or null with status available, unavailable, or unknown. registration.x402_url is reserved for a future headless registration service.

## Errors

Invalid domains return 422 and are not settled. Registry, policy, and network failures are represented as unknown rather than available.

## Auth And Limits

No account or API key. An x402 v2 exact USDC payment is required; the first request returns PAYMENT-REQUIRED.

Maximum 100 domains per request. The standard API throttle also applies.

## Examples

### Requests

```text
GET /api/v1/domain-availability/example.com
```

```text
POST /api/v1/domain-availability {"domains":["example.com","example.net"]}
```

### Responses

```json
{"error":"payment_required","message":"PAYMENT-SIGNATURE header is required"}
```

```json
{"product":"domain-availability","version":"1","domain":"example.com","available":false,"status":"unavailable","registration":{"x402_url":null}}
```

## FAQ

### Does available guarantee a registrar will accept the registration?

No. It means the authoritative registration lookup found no record. Registry policy, premium status, reserved names, and registrar rules may still apply.

### Why can available be null?

Unknown preserves uncertainty when RDAP, WHOIS, registry policy, or the network cannot provide a reliable answer.

## Related Skills

- [Domain Intelligence — RDAP/WHOIS, DNS & DomainSure](https://dnsskills.md/domain-intelligence.md)
- [DNS Twister](https://dnsskills.md/skills/dns-twister.md)
