//Domain Verification

Domain Verification

Verify ownership of a domain to enable custom branding and SSO domain restrictions.

Endpoints

POST /api/domain-verification/initiate

Initiates domain verification for an organization.

Input: ~~~json { "org_uuid": "org-uuid-12345", "domain": "acme.com" } ~~~

Output: ~~~json { "verification_id": "ver-uuid-123", "txt_record_name": "_buttrbase-verify.acme.com", "txt_record_value": "buttrbase-verify=abc123xyz", "expires_at": "2024-07-18T00:00:00Z" } ~~~

Add the TXT record to your DNS configuration.

POST /api/domain-verification/verify

Checks if the TXT record has propagated and marks the domain as verified.

Input: ~~~json { "verification_id": "ver-uuid-123" } ~~~

Output: ~~~json { "verified": true, "domain": "acme.com" } ~~~

GET /api/domain-verification

Lists all verified domains for an organization.

Query Parameters:

  • org_uuid: The organization UUID.

Error Reference

| Status | Code | Meaning | |--------|------|---------| | 400 | validation_error | Request body failed validation | | 401 | unauthorized | Missing or invalid Authorization header | | 403 | forbidden | Insufficient permissions | | 404 | not_found | Resource does not exist | | 409 | conflict | Resource already exists or constraint violated | | 422 | unprocessable | Semantic validation failure | | 429 | rate_limited | Request rate exceeded | | 500 | internal_error | Unexpected server error |