---
title: "Verify a sending domain."
method: POST
path: "/v1/email/domains/{id}/verify"
tags: ["Email"]
---

# Verify a sending domain.

`POST /v1/email/domains/{id}/verify`

## Request

- Base URL: `https://api.scalix.world`
- URL: `https://api.scalix.world/v1/email/domains/{id}/verify`
- Auth: HTTP bearer

Re-checks the domain's DNS records and updates its verification state.
Verifying a domain proves ownership; it does not by itself enable delivery.
Requires the `email:send` scope.

## Path parameters

- `id` string, required

## Response `200`

Verification result

- EmailDomain: A sending domain owned by the org, with the DNS records it needs.
  - `id` string, required: Domain id.
  - `domain` string, required: The domain itself.
  - `status` string, required: Verification state of the DNS records.
  - `dns_records` object, nullable: DNS records that must exist for the domain to verify.
  - `delivery_enabled` boolean, nullable: Whether this org may actually send through the domain. Verification alone is not sufficient: bring-your-own delivery is a separate switch.

## Other responses

- `401`: Missing or invalid API key
- `403`: Missing email:send scope
- `404`: Domain not found
- `500`: Internal error

---

[API](https://skmtc.dev/scalix/apis/scalix-cloud-api.md) · [All operations](https://skmtc.dev/scalix/apis/scalix-cloud-api/llms.txt) · [OpenAPI document](https://skmtc.dev/scalix/apis/scalix-cloud-api/revisions/2c04ca0a90bb?raw)
