---
title: "Initiate Domain Claim"
method: POST
path: "/v1/domains/claims"
tags: ["Domains"]
---

# Initiate Domain Claim

`POST /v1/domains/claims`

Start claiming a domain that is already in use by another workspace. Returns the DNS TXT record you must publish at _migma.<rootDomain> to prove ownership. Requires API key with domain:write.

## Headers

- `Idempotency-Key` string

## Request body

- DomainClaimInitiateRequest
  - `domain` string, required — The domain you want to claim, e.g. 'acme.com' or 'send.acme.com'. The root apex is resolved automatically.

## Response `200`

Claim challenge returned. Publish the TXT record, then call /v1/domains/claims/{domain}/verify.

- ApiResponseDomainClaimChallenge
  - `success` boolean, required
  - `data` object, nullable
    - `message` string
    - `rootDomain` string — The apex domain you must prove ownership of.
    - `record` DnsRecord
      - `type` 'CNAME' | 'TXT' | 'MX'
      - `name` string
      - `value` string
      - `priority` integer
      - `status` 'pending' | 'verified' | 'failed'
  - `error` string, nullable

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden - Missing required permissions or access denied
- `409` — Conflict - the Idempotency-Key was reused with a different request body (code: IDEMPOTENCY_CONFLICT)

---

[API](https://skmtc.net/migma/apis/migma-ai-api-v1.md) · [All operations](https://skmtc.net/migma/apis/migma-ai-api-v1/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/migma/migma-ai-api-v1/revisions/3f3dba69574b/schema)
