Skip to content

Add a custom domain to a status page

POST
/status-pages/{id}/domains
curl --request POST \
--url https://api.perstat.io/status-pages/example/domains \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "domain": "example", "method": "example" }'

Registers a custom domain for the status page and returns the unique CNAME target the customer must configure; ownership verification then runs automatically in the background. Gated by the plan’s per-page custom domain limit (402 when exceeded); reserved platform namespaces are rejected and duplicate domains return 409. Accepts API keys with the status-pages:write scope, subject to current role and resource grants.

id
required
string
Media typeapplication/json
object
domain
required
string
method

Veraltet/ignoriert — Verifizierung ist immer CNAME (autoritativ). Bleibt für Abwärtskompatibilität des Contracts erhalten.

string | null
Examplegenerated
{
"domain": "example",
"method": "example"
}

Resource created. The response body contains the created resource.

Media typeapplication/json
object
cert_status

Vom Edge gemeldeter Cert-Status.

string | null
cname_target
required

CNAME-Ziel, das der Kunde setzen soll.

string
domain
required
string
edge_synced
required

true, sobald die Domain erfolgreich als VHost an die Edge gepusht wurde. Eine verifizierte Domain mit edge_synced=false ist noch in Bereitstellung (Edge-Push steht aus / wird vom Reconcile nachgezogen) und serviert noch nicht.

boolean
id
required

Public_id (spd_…).

string
last_error
string | null
status
required

pending | verified | failed.

string
verification_method
required

cname | txt.

string
verification_token
required

Wert für den TXT-Record _datargo-verify.<domain>.

string
verified_at

Unix-Sekunden der Verifikation.

integer | null format: int64
Examplegenerated
{
"cert_status": "example",
"cname_target": "example",
"domain": "example",
"edge_synced": true,
"id": "example",
"last_error": "example",
"status": "example",
"verification_method": "example",
"verification_token": "example",
"verified_at": 1
}

The request is invalid. Check the supplied fields and values.

The request exceeds an entitlement or limit of the current plan.

The authenticated caller does not have permission to perform this operation.

No accessible resource matches the supplied identifier.

The request conflicts with the current resource state.