Create custom domain
create_custom_domainClaim a custom hostname for this tenant and generate its DNS challenge. The claim alone grants NOTHING until ownership is proven — it returns TWO DNS records (an ownership TXT and a permanent routing CNAME) in dns_records that the customer must add at their DNS provider. Present those records to the human, wait for them to add them, then call verify_custom_domain. slug_prefix/root_endpoint are optional here and are usually set later with update_custom_domain (after the domain verifies).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| hostname | Yes | The customer's fully-qualified hostname, e.g. shop.customer.com. Immutable — it is the domain's identity. | |
| slug_prefix | No | Optional. The endpoint subtree this domain mounts (an isolation boundary). Usually the slug prefix of the app this domain should front. Can be set later with update_custom_domain. | |
| display_name | No | Optional human label, e.g. 'Marketing site'. | |
| root_endpoint | No | Optional. What the domain root ('/') serves, RELATIVE to slug_prefix. Can be set later with update_custom_domain. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | ||
| hostname | Yes | ||
| dns_records | No | ||
| slug_prefix | No | ||
| verified_at | No | ||
| activated_at | No | ||
| display_name | No | ||
| root_endpoint | No | ||
| last_check_message | No | ||
| cert_status_message | No |