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.

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"
}
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
}