Update status page settings
const url = 'https://api.perstat.io/status-pages/example';const options = { method: 'PATCH', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"access_mode":"example","collapsed_groups":["example"],"description":"example","enabled":true,"header_nav":[{"href":"example","label":"example"}],"headline":"example","hide_datargo_brand":true,"name":"example","password_protected":true,"public_viewable":true,"slug":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://api.perstat.io/status-pages/example \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "access_mode": "example", "collapsed_groups": [ "example" ], "description": "example", "enabled": true, "header_nav": [ { "href": "example", "label": "example" } ], "headline": "example", "hide_datargo_brand": true, "name": "example", "password_protected": true, "public_viewable": true, "slug": "example" }'Updates the settings of a status page: name, slug, headline, description, publication state, access mode, header navigation, and branding options. Private access modes and hiding the platform branding are plan-gated (402). Slug collisions return 409, and slug changes are rate-limited to three per week (429). Requires project management rights.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Request Bodyrequired
Section titled “Request Bodyrequired”object
Zugriffsmodus (neuer, expliziter Weg): “draft” | “public” | “shared_password”
| “viewer_login”. Wenn gesetzt, hat er Vorrang vor den Legacy-Flags
public_viewable/password_protected und ist die EINE Quelle der Wahrheit
für genau ein Gate.
Gruppen-Namen, die standardmäßig eingeklappt dargestellt werden; fehlt das Feld, bleibt die bisherige Liste erhalten.
Header-Navigation; fehlt sie, bleibt die bisherige erhalten.
Ein Navigationselement der Header-Bar.
object
Perstat-Branding der Seite ausblenden (Seite + Abo-Mails). Fehlt das Feld,
bleibt der bisherige Wert. Tarif-Feature: ohne monitor.white_label lehnt
der Server das EINSCHALTEN mit 402 ab (Ausschalten geht immer).
Seite als privat (passwortgeschützt = Viewer-Login) schalten. Legacy-Fallback,
wenn access_mode fehlt. Tarif-Feature: ohne monitor.private_status_pages
lehnt der Server das Einschalten mit 403 ab.
Optionaler neuer Subdomain-Slug. Wird serverseitig normalisiert (slugify); fehlt er oder ist leer, bleibt der bisherige Slug erhalten.
Examplegenerated
{ "access_mode": "example", "collapsed_groups": [ "example" ], "description": "example", "enabled": true, "header_nav": [ { "href": "example", "label": "example" } ], "headline": "example", "hide_datargo_brand": true, "name": "example", "password_protected": true, "public_viewable": true, "slug": "example"}Responses
Section titled “Responses”object
Gruppen-Namen, die auf der publizierten Seite standardmäßig eingeklappt sind.
Header-Navigation (Label + URL).
Ein Navigationselement der Header-Bar.
object
Per-Seite-Schalter „Perstat-Branding ausblenden“. Wirksam nur zusammen
mit der Tarif-Cap monitor.white_label (siehe white_label_available
im Detail-DTO); ohne Cap bleibt der gespeicherte Wert wirkungslos.
Privat: publizierte Seite hinter Viewer-Login (orthogonal zu public_viewable).
Gemeinsames Kennwort: EIN geteiltes Passwort schaltet die ganze Seite frei
(orthogonal zu public_viewable, mutually-exclusive zu password_protected).
Ob ein geteiltes Kennwort GESETZT ist (Hash vorhanden). Niemals das Klartext — nur dieser bool, damit der Editor „gesetzt/leer“ anzeigen kann.
Examplegenerated
{ "collapsed_groups": [ "example" ], "description": "example", "enabled": true, "header_nav": [ { "href": "example", "label": "example" } ], "headline": "example", "hide_datargo_brand": true, "id": "example", "name": "example", "organization_id": "example", "password_protected": true, "public_viewable": true, "shared_password_protected": true, "shared_password_set": true, "slug": "example"}Privat braucht perstat.private_status_pages, Branding-Ausblenden perstat.white_label (Tarif)
Slug bereits vergeben
Zu viele Slug-Wechsel (max. 3/Woche)