Org domains

Claim org domain

Claims a DNS name for this organization. The response carries verification_record — publish that exact TXT value, then call POST /org-domain/{id}/verify. Unverified domains grant nothing. Requires org:manage. A browser session must also pass a fresh step-up reauthentication in the app (without it the call answers 428 step_up_required). An organization API token is not challenged.

post/org-domain

Request

  • Base URL: https://api.elaichi.ai
  • URL: https://api.elaichi.ai/org-domain
  • Auth: HTTP bearer

Headers

X-Organization-Idstring

Target organization (org_…). Required for cookie/session auth on org-scoped routes; optional for API tokens, which carry their organization, and rejected when it names a different one.

Request body

domainstring required

A valid DNS name, e.g. acme.com. Lowercased.

Response

Created

idstring

Org domain id.

organization_idstring

Owning organization (org_…).

domainstring

DNS name, lowercased (e.g. acme.com).

verifiedboolean
verification_recordstring nullable

The exact DNS TXT value to publish. Present until the domain is verified, then null — the token is of no further use.

default_role_idstring nullable

Role (role_…) explicitly configured for domain auto-join, or null to track the default. Org Owner is refused here. Read effective_default_role_id to learn what a join actually grants.

effective_default_role_idstring nullable

Server-computed: the role a verified-domain auto-join really grants. Equals default_role_id when that is set and the role still exists; otherwise the Member system role, which is what the join falls back to both when nothing is configured and when the configured role has since been deleted. null means even that fallback is missing, so auto-join on this domain fails rather than seating anyone.

sso_connection_idstring nullable

Linked SSO connection (sso_…).

created_atstring date-time
updated_atstring date-time

Changes

No recorded changes to this operation across all 1 revision of this API.