# POST /api/v1/domains/{domain}/registrant

> Update the registrant contact

- Group: domains
- Tier: W
- Required scope: write:domains
- Docs: https://api.inleed.com/reference/domains/update-registrant

## Description

Updates the domain's registrant contact in place. Returns the resulting `contactId`, the `target` and a note that the registry may confirm the change with the owner. The legal owner change is `request_owner_change`, not this.

## Path parameters

- `domain` — string (required)

## Body

- `input` — string (required). A domain, email address, website URL, or Inleed service id — for example example.se, info@example.se or 42976. Resolved to the owning account automatically, and the resolved target is echoed back in the response.
- `contact` — object (required). The registrant contact fields to set. Supply only the fields you are changing.
  - `name` — string. Contact full name.
  - `company` — string. Company / organisation name.
  - `email` — string. Contact email address.
  - `phone` — string. Contact phone number, e.g. +46 8 123 456.
  - `address` — string. Street address.
  - `city` — string. City.
  - `postcode` — string. Postal code.
  - `state` — string. State / region, where the registry uses one.
  - `country` — string. Two-letter ISO country code, e.g. SE.

## Request

```bash
curl -X POST "https://mcp.inleed.com/api/v1/domains/example.se/registrant" \
  -H "Authorization: Bearer inl_live_…" \
  -H "Content-Type: application/json" \
  -d '{"input":"example.se","contact":{"name":"example.se","company":"example.se","email":"info@example.se","phone":"example.se","address":"info@example.se","city":"example.se","postcode":"example.se","state":"example.se","country":"example.se"}}'
```

## Errors

- **400**  — codes: invalid_request
- **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, not_owned
- **404** No such resource for this account. — codes: not_found
- **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 — https://api.inleed.com/reference/domains/list-domains
- 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

