Set the monitors shown on a status page
const url = 'https://api.perstat.io/status-pages/example/monitors';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"monitors":[{"display_name":"example","group_label":"example","monitor":"example","show_sparkline":true,"show_uptime_bars":true,"show_uptime_chart":true,"uptime_window_days":1}]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.perstat.io/status-pages/example/monitors \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "monitors": [ { "display_name": "example", "group_label": "example", "monitor": "example", "show_sparkline": true, "show_uptime_bars": true, "show_uptime_chart": true, "uptime_window_days": 1 } ] }'Replaces the full ordered list of monitors shown on the status page, with per-entry display options such as display name, group label, and which uptime visualizations are shown. Returns the updated status page detail. 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
Geordnete Monitor-Liste (Position = sort_order).
object
Gruppen-Override (leer/null → Projektname als Default-Gruppe).
Monitor-public_id (mon_…).
7|14|30|90|180|365 (sonst → 90).
Examplegenerated
{ "monitors": [ { "display_name": "example", "group_label": "example", "monitor": "example", "show_sparkline": true, "show_uptime_bars": true, "show_uptime_chart": true, "uptime_window_days": 1 } ]}Responses
Section titled “Responses”object
Ob die Seite ein Logo hat (für den Editor).
Ob die Seite ein Dark-Mode-Logo hat (für den Editor).
object
Rohe abweichende Bezeichnung (null → Monitor-Name) — für den Editor.
Gruppen-Override (null → Projektname als Default-Gruppe) — für den Editor.
Effektives öffentliches Label (Override oder Monitor-Name).
Monitor-public_id (mon_…).
Projektname des Monitors = Default-/Platzhalter-Gruppe.
Uptime/Historie-Fenster in Tagen (7|14|30|90|180|365).
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
{ "has_logo": true, "has_logo_dark": true, "monitors": [ { "display_name": "example", "group_label": "example", "label": "example", "monitor": "example", "project": "example", "show_sparkline": true, "show_uptime_bars": true, "show_uptime_chart": true, "sort_order": 1, "uptime_window_days": 1 } ], "page": { "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" }}