Journey Docs
Partner API ExplorerCustom Domains

Connect a custom domain

Required scopepartner:custom-domains:manage
POST
/v1/partner/custom-domains

Registers a domain owned by your organization, one of its brands, or one of its venues. The domain starts unverified; drive DNS verification with an Entri session, then poll or force a recheck.

Authorization

headerAuthorizationBearer <token>

WorkOS access token (JWT) for a user who is a member of the partner organization. The organization the request is scoped to is taken from the token, not from a header or query parameter.

Only a JWT is accepted in this header. A Journey jny_ API key sent as a bearer token is rejected with 401 Invalid or expired token; send it in X-API-Key instead.

WorkOS organization API keys are not accepted yet.

Request Body

application/json
  1. body
hostname*string
Lengthlength <= 253
ownerEntityExternalId?string
Lengthlength <= 200
ownerEntityType?string
Value in"brand""organization""property"

Response Body

The newly connected domain, pending verification.

application/json
  1. response
activatedAt*|
Formatdate-time
blockedBy*|
Value in"dns""hosting"
createdAt*string
Formatdate-time
dnsState*string
Value in"unknown""confirmed""missing""timed_out"
externalId*string
hostingState*string
Value in"ready""unattached""attached""rejected"
hostname*string
lastCheckedAt*|
Formatdate-time
lastError*string|null
ownerEntityExternalId*string
ownerEntityName*string|null
ownerEntityType*string
Value in"brand""organization""property"
requiredDnsRecords*array<>
status*string
Value in"active""pending_dns""propagated""failed""disconnected"
updatedAt*string
Formatdate-time
curl -X POST 'https://api-prd.cf.journey.com/v1/partner/custom-domains' \  -H 'Content-Type: application/json' \  -d '{  "hostname": "string"}'
{  "activatedAt": "2019-08-24T14:15:22Z",  "blockedBy": "dns",  "createdAt": "2019-08-24T14:15:22Z",  "dnsState": "unknown",  "externalId": "string",  "hostingState": "ready",  "hostname": "string",  "lastCheckedAt": "2019-08-24T14:15:22Z",  "lastError": "string",  "ownerEntityExternalId": "string",  "ownerEntityName": "string",  "ownerEntityType": "brand",  "requiredDnsRecords": [    {      "host": "string",      "type": "CNAME",      "value": "string"    }  ],  "status": "active",  "updatedAt": "2019-08-24T14:15:22Z"}