---
title: "Create or rotate a tenant DNS TXT domain challenge"
method: POST
path: "/tenant/domains"
---

# Create or rotate a tenant DNS TXT domain challenge

`POST /tenant/domains`

## Request

- Base URL: `https://api.gravityads.dev` (the document declares no server; this is the origin it was published from)
- URL: `https://api.gravityads.dev/tenant/domains`
- Auth: HTTP bearer

## Request body

- object
  - `tenant_id` string: Ignored for tenant portal calls; auth context wins.
  - `domain` string, required: Bare DNS name, for example example.com.
  - `rotate_challenge` boolean

## Response `200`

Tenant domain challenge

- object
  - `schema_version` 'gravityads.tenant_domain_verifications.v1', required
  - `status` string, required
  - `tenant_id` string, required
  - `domain` string
  - `domain_count` integer, required
  - `verified_domain_count` integer, required
  - `domains` object[], required
  - `database_url_configured` boolean, required
  - `ready_for_enterprise_sso_domain` boolean
  - `tenant_id_from_auth_context` true
  - `live_dns_lookup` boolean
  - `dns_lookup_error_type` string
  - `hosted_auth_context` object
  - `dns_challenge_returned` boolean, required
  - `raw_secrets_returned` false, required

---

[API](https://skmtc.dev/gravityads/apis/gravityads-api.md) · [All operations](https://skmtc.dev/gravityads/apis/gravityads-api/llms.txt) · [OpenAPI document](https://skmtc.dev/gravityads/apis/gravityads-api/revisions/124cd07d534d?raw)
