Servor. docs
en

API Pages de statut

Lisez vos pages de statut Servor, leurs composants et l'historique public des incidents via l'API avec un jeton status-pages:read.

Lisez vos pages de statut publiques et leur historique d'incidents via l'API. Ces endpoints servent à recopier votre statut ailleurs, alimenter un widget public « état des services » ou exporter la chronologie des incidents que vos visiteurs voient déjà. Tout est en lecture seule : la création et la personnalisation des pages de statut restent dans le tableau de bord : créer une page de statut dans Servor.

Ces endpoints requièrent le scope status-pages:read.

get/v1/status-pagesScope: status-pages:read

List status pages

Exemple de requête

curl https://api.servor.app/v1/status-pages \
  -H "Authorization: Bearer sv_live_..."

Exemple de réponse

[
  {
    "id": "uuid",
    "name": "Acme Status",
    "uniqueHostname": "acme12ab34",
    "slug": "acme",
    "visibility": "public",
    "primaryColor": "#06b6d4",
    "description": null,
    "suspended": false,
    "createdAt": "2026-08-01T00:00:00.000Z"
  }
]
get/v1/status-pages/{id}Scope: status-pages:read

Get a status page with its components

Paramètres

  • iduuidpath · requis

    The status page id.

Exemple de requête

curl https://api.servor.app/v1/status-pages/:id \
  -H "Authorization: Bearer sv_live_..."

Exemple de réponse

{
  "id": "uuid",
  "name": "Acme Status",
  "uniqueHostname": "acme12ab34",
  "slug": "acme",
  "visibility": "public",
  "primaryColor": "#06b6d4",
  "description": null,
  "suspended": false,
  "createdAt": "2026-08-01T00:00:00.000Z",
  "components": [
    {
      "id": "uuid",
      "name": "API",
      "groupName": null,
      "position": 0
    }
  ]
}
get/v1/status-pages/{id}/incidentsScope: status-pages:read

List incidents shown on a status page

Paramètres

  • iduuidpath · requis

    The status page id.

Exemple de requête

curl https://api.servor.app/v1/status-pages/:id/incidents \
  -H "Authorization: Bearer sv_live_..."

Exemple de réponse

[
  {
    "id": "uuid",
    "title": "API degraded",
    "status": "investigating",
    "impact": "major",
    "statusPageId": "uuid",
    "isMaintenance": false,
    "startedAt": "2026-08-20T10:00:00.000Z",
    "resolvedAt": null,
    "createdAt": "2026-08-20T10:00:00.000Z"
  }
]

Ce que vous récupérez

  • GET /v1/status-pages — la liste des pages de statut de votre équipe, chacune avec son nom, sa visibilité et son état global.
  • GET /v1/status-pages/{id} — une page de statut avec ses composants. Les composants sont les services affichés sur la page ; quand un composant est lié à un moniteur, son état se met à jour automatiquement.
  • GET /v1/status-pages/{id}/incidents — l'historique public des incidents de cette page, la même chronologie que voient vos visiteurs.

Exemple

curl https://api.servor.app/v1/status-pages \
  -H "Authorization: Bearer sv_live_..."

Reprenez un id de cette liste pour lire une page et ses incidents :

curl https://api.servor.app/v1/status-pages/sp_123 \
  -H "Authorization: Bearer sv_live_..."
 
curl https://api.servor.app/v1/status-pages/sp_123/incidents \
  -H "Authorization: Bearer sv_live_..."

Construire un widget de statut

Combinez l'état global de la page avec /{id}/incidents pour afficher un badge compact « tous les services fonctionnent » dans votre propre application. Pour une image intégrable sans code, il existe aussi un badge de statut.

Remarques

  • Ces endpoints renvoient ce qui est public sur la page. L'accès en lecture ici est indépendant du fait qu'une page soit protégée par mot de passe — voir rendre une page privée.
  • Pour écrire des incidents qui apparaissent sur une page de statut, utilisez l'API Incidents avec un jeton incidents:write.
  • Un 403 signifie que votre jeton n'a pas le scope status-pages:read — voir les erreurs pour la liste complète des codes de statut.

Voir aussi