---
title: "Verify a custom domain"
method: POST
path: "/domains/{id}/verify"
tags: ["Domains"]
---

# Verify a custom domain

`POST /domains/{id}/verify`

## Request

- Base URL: `https://api.cavuno.com/v1`
- URL: `https://api.cavuno.com/v1/domains/{id}/verify`
- Auth: HTTP bearer

Starts an asynchronous `domains.verify` operation for the custom domain.

## Path parameters

- `id` string, required: The custom domain ID.

## Response `202`

Verification operation started.

- OperationResource
  - `id` string, required: Unique identifier for the object.
  - `object` 'operation', required: String representing the object's type. Objects of the same type share the same value.
  - `kind` 'domains.verify' | 'imports.parse' | 'imports.confirm' | 'subscribers.export' | 'subscribers.import' | 'custom_objects.records_import' | 'exports.generate' | 'candidates.remove' | 'employers.remove', required: Operation kind, identifying which workflow the operation runs.
  - `state` 'pending' | 'running' | 'succeeded' | 'failed' | 'cancelled', required: Current state of the operation.
  - `progress` OperationProgress, nullable, required: Snapshot of the operation's progress, or `null` if the operation does not report progress.
    - `percent` number: Progress as a percentage between 0 and 100, when the operation reports a percentage.
    - `message` string: Human-readable progress message, when available.
    - `processed` number: Number of items processed so far, when applicable.
    - `total` number: Total number of items to process, when known.
  - `result` object, nullable: A safe workflow result summary when the operation kind publishes one.
    - `totalRows` number, required
    - `created` number, required
    - `updated` number, required
    - `failed` number, required
    - `errors` object[], required
      - `rowIndex` number, required
      - `code` string, required
      - `message` string, required
  - `error` OperationErrorEnvelope, nullable, required: Error envelope, populated once the operation reaches `failed`. `null` otherwise.
    - `code` string, required: Machine-readable error code.
    - `message` string, required: Human-readable error message.
  - `createdAt` string, required: Time at which the operation was created. ISO 8601 datetime.
  - `updatedAt` string, required: Time at which the operation was last updated. ISO 8601 datetime.
  - `completedAt` string, nullable, required: Time at which the operation reached a terminal state, or `null` if it has not yet completed. ISO 8601 datetime.
  - `cancelRequested` boolean, required: Whether cancellation of the operation has been requested.
  - `resource` object, nullable, required: Stable product resource affected by the operation, or `null` when no public resource applies.
    - `object` 'company' | 'domain' | 'import' | 'employer' | 'candidate' | 'custom_object_type', required
    - `id` string, required

## Other responses

- `404`: Domain not found.

## Changes

- **2026-10-19** `c34152c38176`: 1 info
  - added the optional property `error/upgrade` to the response with the `404` status

[Operation history](https://skmtc.dev/cavuno/apis/cavuno-v1-rest-api/changes/domains/:id/verify/post.md)

---

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