Statuspage Pages API

The Pages API from Statuspage — 17 operation(s) for pages.

Operations 29

GET /pages List pages #
GET /pages/{page_id} Get a page #
PATCH /pages/{page_id} Update a page #
GET /pages/{page_id}/components List components on a page #
POST /pages/{page_id}/components Create a component #
GET /pages/{page_id}/components/{component_id} Get a component #
PATCH /pages/{page_id}/components/{component_id} Update a component #
DELETE /pages/{page_id}/components/{component_id} Delete a component #
GET /pages/{page_id}/component-groups List component groups #
POST /pages/{page_id}/component-groups Create a component group #
GET /pages/{page_id}/incidents List incidents #
POST /pages/{page_id}/incidents Create an incident #
GET /pages/{page_id}/incidents/{incident_id} Get an incident #
PATCH /pages/{page_id}/incidents/{incident_id} Update an incident #
DELETE /pages/{page_id}/incidents/{incident_id} Delete an incident #
GET /pages/{page_id}/incidents/unresolved List unresolved incidents #
GET /pages/{page_id}/incidents/scheduled List scheduled incidents #
PATCH /pages/{page_id}/incidents/{incident_id}/incident_updates/{incident_update_id} Update an incident update #
GET /pages/{page_id}/maintenances List scheduled maintenances #
GET /pages/{page_id}/maintenances/active List active maintenances #
GET /pages/{page_id}/maintenances/upcoming List upcoming maintenances #
GET /pages/{page_id}/subscribers List subscribers #
POST /pages/{page_id}/subscribers Create a subscriber #
GET /pages/{page_id}/subscribers/{subscriber_id} Get a subscriber #
PATCH /pages/{page_id}/subscribers/{subscriber_id} Update a subscriber #
DELETE /pages/{page_id}/subscribers/{subscriber_id} Delete a subscriber #
GET /pages/{page_id}/metrics List metrics #
POST /pages/{page_id}/metrics Create a metric #
POST /pages/{page_id}/metrics/{metric_id}/data Add metric data points #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/statuspage-pages-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

statuspage-pages-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Statuspage REST Pages API
  version: 1.0.0
  description: 'Atlassian Statuspage REST API for managing pages, components, incidents,

    scheduled maintenances, metrics, and subscribers. Endpoints derived from

    https://developer.statuspage.io/. Each API token is limited to 1 request

    per second on a 60-second rolling window.'
  contact:
    name: Statuspage Support
    url: https://support.atlassian.com/statuspage/
servers:
- url: https://api.statuspage.io/v1
  description: Statuspage REST API
security:
- ApiKey: []
tags:
- name: Pages
paths:
  /pages:
    get:
      summary: List pages
      responses:
        '200':
          description: List of pages
      tags:
      - Pages
      operationId: getPages
      x-operation-id-source: derived
  /pages/{page_id}:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    get:
      summary: Get a page
      responses:
        '200':
          description: Page
      tags:
      - Pages
      operationId: getPagesByPageId
      x-operation-id-source: derived
    patch:
      summary: Update a page
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Updated page
      tags:
      - Pages
      operationId: patchPagesByPageId
      x-operation-id-source: derived
  /pages/{page_id}/components:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    get:
      summary: List components on a page
      responses:
        '200':
          description: List of components
      tags:
      - Pages
      operationId: getPagesByPageIdComponents
      x-operation-id-source: derived
    post:
      summary: Create a component
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Component created
      tags:
      - Pages
      operationId: postPagesByPageIdComponents
      x-operation-id-source: derived
  /pages/{page_id}/components/{component_id}:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    - in: path
      name: component_id
      required: true
      schema:
        type: string
    get:
      summary: Get a component
      responses:
        '200':
          description: Component
      tags:
      - Pages
      operationId: getPagesByPageIdComponentsByComponentId
      x-operation-id-source: derived
    patch:
      summary: Update a component
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Updated component
      tags:
      - Pages
      operationId: patchPagesByPageIdComponentsByComponentId
      x-operation-id-source: derived
    delete:
      summary: Delete a component
      responses:
        '204':
          description: Deleted
      tags:
      - Pages
      operationId: deletePagesByPageIdComponentsByComponentId
      x-operation-id-source: derived
  /pages/{page_id}/component-groups:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    get:
      summary: List component groups
      responses:
        '200':
          description: List of component groups
      tags:
      - Pages
      operationId: getPagesByPageIdComponentGroups
      x-operation-id-source: derived
    post:
      summary: Create a component group
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Component group created
      tags:
      - Pages
      operationId: postPagesByPageIdComponentGroups
      x-operation-id-source: derived
  /pages/{page_id}/incidents:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    get:
      summary: List incidents
      responses:
        '200':
          description: List of incidents
      tags:
      - Pages
      operationId: getPagesByPageIdIncidents
      x-operation-id-source: derived
    post:
      summary: Create an incident
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Incident created
      tags:
      - Pages
      operationId: postPagesByPageIdIncidents
      x-operation-id-source: derived
  /pages/{page_id}/incidents/{incident_id}:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    - in: path
      name: incident_id
      required: true
      schema:
        type: string
    get:
      summary: Get an incident
      responses:
        '200':
          description: Incident
      tags:
      - Pages
      operationId: getPagesByPageIdIncidentsByIncidentId
      x-operation-id-source: derived
    patch:
      summary: Update an incident
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Updated incident
      tags:
      - Pages
      operationId: patchPagesByPageIdIncidentsByIncidentId
      x-operation-id-source: derived
    delete:
      summary: Delete an incident
      responses:
        '204':
          description: Deleted
      tags:
      - Pages
      operationId: deletePagesByPageIdIncidentsByIncidentId
      x-operation-id-source: derived
  /pages/{page_id}/incidents/unresolved:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    get:
      summary: List unresolved incidents
      responses:
        '200':
          description: List of unresolved incidents
      tags:
      - Pages
      operationId: getPagesByPageIdIncidentsUnresolved
      x-operation-id-source: derived
  /pages/{page_id}/incidents/scheduled:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    get:
      summary: List scheduled incidents
      responses:
        '200':
          description: List of scheduled incidents
      tags:
      - Pages
      operationId: getPagesByPageIdIncidentsScheduled
      x-operation-id-source: derived
  /pages/{page_id}/incidents/{incident_id}/incident_updates/{incident_update_id}:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    - in: path
      name: incident_id
      required: true
      schema:
        type: string
    - in: path
      name: incident_update_id
      required: true
      schema:
        type: string
    patch:
      summary: Update an incident update
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Updated incident update
      tags:
      - Pages
      operationId: patchPagesByPageIdIncidentsByIncidentIdIncidentUpdatesByIncidentUpdateId
      x-operation-id-source: derived
  /pages/{page_id}/maintenances:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    get:
      summary: List scheduled maintenances
      responses:
        '200':
          description: List of maintenances
      tags:
      - Pages
      operationId: getPagesByPageIdMaintenances
      x-operation-id-source: derived
  /pages/{page_id}/maintenances/active:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    get:
      summary: List active maintenances
      responses:
        '200':
          description: List of active maintenances
      tags:
      - Pages
      operationId: getPagesByPageIdMaintenancesActive
      x-operation-id-source: derived
  /pages/{page_id}/maintenances/upcoming:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    get:
      summary: List upcoming maintenances
      responses:
        '200':
          description: List of upcoming maintenances
      tags:
      - Pages
      operationId: getPagesByPageIdMaintenancesUpcoming
      x-operation-id-source: derived
  /pages/{page_id}/subscribers:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    get:
      summary: List subscribers
      responses:
        '200':
          description: List of subscribers
      tags:
      - Pages
      operationId: getPagesByPageIdSubscribers
      x-operation-id-source: derived
    post:
      summary: Create a subscriber
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Subscriber created
      tags:
      - Pages
      operationId: postPagesByPageIdSubscribers
      x-operation-id-source: derived
  /pages/{page_id}/subscribers/{subscriber_id}:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    - in: path
      name: subscriber_id
      required: true
      schema:
        type: string
    get:
      summary: Get a subscriber
      responses:
        '200':
          description: Subscriber
      tags:
      - Pages
      operationId: getPagesByPageIdSubscribersBySubscriberId
      x-operation-id-source: derived
    patch:
      summary: Update a subscriber
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Updated subscriber
      tags:
      - Pages
      operationId: patchPagesByPageIdSubscribersBySubscriberId
      x-operation-id-source: derived
    delete:
      summary: Delete a subscriber
      responses:
        '204':
          description: Deleted
      tags:
      - Pages
      operationId: deletePagesByPageIdSubscribersBySubscriberId
      x-operation-id-source: derived
  /pages/{page_id}/metrics:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    get:
      summary: List metrics
      responses:
        '200':
          description: List of metrics
      tags:
      - Pages
      operationId: getPagesByPageIdMetrics
      x-operation-id-source: derived
    post:
      summary: Create a metric
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Metric created
      tags:
      - Pages
      operationId: postPagesByPageIdMetrics
      x-operation-id-source: derived
  /pages/{page_id}/metrics/{metric_id}/data:
    parameters:
    - in: path
      name: page_id
      required: true
      schema:
        type: string
    - in: path
      name: metric_id
      required: true
      schema:
        type: string
    post:
      summary: Add metric data points
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Data submitted
      tags:
      - Pages
      operationId: postPagesByPageIdMetricsByMetricIdData
      x-operation-id-source: derived
components:
  securitySchemes:
    ApiKey:
      type: apiKey
      in: header
      name: Authorization
      description: 'Pass `Authorization: OAuth <api_key>`. The API key may alternatively

        be provided via the `api_key` query parameter.

        '