# GET /api/v1/domains

> List the account's registrar domains

- Group: domains
- Tier: R
- Required scope: read:domains
- Docs: https://api.inleed.com/reference/domains/list-domains

## Description

Returns `data[]` of domains with `id`, `domain`, `tld`, `status`, `expiresAt`, `isAutorenew`, `renewalPrice` and `can:{}`. These are the registrar subscriptions; hosting accounts are in `list_services` and the DNS records inside a zone are `list_dns_records`.

## Query parameters

- `status` — string. Optional status filter, e.g. completed.
- `expiring_within_days` — integer. Only domains expiring within this many days. Applied to the returned page. Range 1–365.

## Request

```bash
curl -X GET "https://mcp.inleed.com/api/v1/domains?status=active&expiring_within_days=3" \
  -H "Authorization: Bearer inl_live_…"
```

## Response · 200

```json
{
  "data": [
    "example.se"
  ],
  "total": 3,
  "note": "Resolved via the owning account."
}
```

## Errors

- **401** No token was presented, or the token is revoked, expired or unknown. — codes: unauthorized, token_expired, token_revoked
- **403** The token lacks a required scope, or this account does not own the resource. — codes: insufficient_scope
- **422** Validation error — codes: validation_failed
- **429** The rate limit for this token is exhausted. See `Retry-After`. — codes: rate_limited
- **500** Something went wrong on our side. The failure is logged against `requestId`. — codes: internal_error

## Related

- GET /api/v1/domains/{domain} — https://api.inleed.com/reference/domains/get-domain
- GET /api/v1/domains/{domain}/auth-code — https://api.inleed.com/reference/domains/get-domain-auth-code
- GET /api/v1/domains/{domain}/redirects — https://api.inleed.com/reference/domains/list-domain-redirects
- GET /api/v1/domains/{domain}/contacts — https://api.inleed.com/reference/domains/get-domain-contacts

