---
title: "Update a domain"
method: PATCH
path: "/domains/{id}"
tags: ["Domains"]
---

# Update a domain

`PATCH /domains/{id}`

## Request

- Base URL: `https://api.crevio.co/v1`
- URL: `https://api.crevio.co/v1/domains/{id}`
- Auth: API key in header `Authorization`

Change the site assignment (site_id, null detaches) or toggle capabilities (email_sending on/off, email_receiving on).

## Path parameters

- `id` string, required

## Request body

- object
  - `site_id` string, nullable
  - `capabilities` object
    - `email_sending` boolean
    - `email_receiving` boolean

## Response `200`

Domain

- Domain
  - `object` string, required
  - `id` string, required
  - `domain` string, required
  - `purchase_status` 'pending_payment' | 'registering' | 'registered' | 'failed' | 'null', nullable, required
  - `site_id` object, required
  - `managed_zone` boolean, required
  - `zone_id` object, required
  - `capabilities` object, required
  - `records` object, required
  - `next_step` object, required
  - `verified_at` string, date-time, nullable
  - `created_at` string, date-time, required
  - `verification_errors` string[], required

## Other responses

- `401`: Authentication required
- `402`: Plan upgrade required — custom domains are available on the Pro and Business plans
- `404`: Resource not found
- `422`: Validation error
- `429`: Rate limit exceeded — 600 requests per minute per credential. Retry after the number of seconds in `Retry-After`.

---

[API](https://skmtc.dev/crevio/apis/crevio-api-v1.md) · [All operations](https://skmtc.dev/crevio/apis/crevio-api-v1/llms.txt) · [OpenAPI document](https://skmtc.dev/crevio/apis/crevio-api-v1/revisions/2219f18ad651?raw)
