Statuspage Incidents & Components
When something breaks, tell customers before they ask: open an incident on your Atlassian Statuspage, post investigating/identified/resolved updates, flip affected components to degraded or major outage, and check uptime and upcoming maintenance.
Connect this API to an AI agent Browse all specs
What you can do with Statuspage Incidents & Components via MCP
Every endpoint below becomes a governed tool your AI agent (Claude, ChatGPT, or a customer-facing VX agent) can call — with scoped permissions, sandbox testing, and audit logs.
| Method | Path | Operation | Description |
|---|---|---|---|
| GET | /pages |
listPages | List the status pages you can manage |
| GET | /pages/{page_id}/incidents/unresolved |
listUnresolvedIncidents | List incidents that are still open |
| GET | /pages/{page_id}/incidents |
listIncidents | List or search incidents on a page |
| POST | /pages/{page_id}/incidents |
createIncident | Open an incident (or schedule maintenance) and notify subscribers |
| GET | /pages/{page_id}/incidents/upcoming |
listUpcomingMaintenances | List scheduled maintenances that have not started |
| GET | /pages/{page_id}/incidents/{incident_id} |
getIncident | Get an incident with its updates and affected components |
| PATCH | /pages/{page_id}/incidents/{incident_id} |
updateIncident | Post an incident update: new status, message, affected components |
| GET | /pages/{page_id}/components |
listComponents | List components and their current status |
| PATCH | /pages/{page_id}/components/{component_id} |
updateComponent | Change a component's status (operational, degraded, outage) |
| GET | /pages/{page_id}/components/{component_id}/uptime |
getComponentUptime | Get a component's uptime for a date range |
Authentication
api_key
API key — sent as the Authorization header
Statuspage API key, sent in the Authorization header as OAuth <your key>.
How to get a credential
- Sign in at manage.statuspage.io.
- Open the user menu (avatar, bottom left) > API info.
- Click Create key, name it and copy it. The key has the same access as your Statuspage user.
- When saving the credential, enter the value as
OAuthfollowed by the key (for exampleOAuth 2a7b...).
Permissions used
| Access | Operations |
|---|---|
| Any team member on the page | listPages, listIncidents, listUnresolvedIncidents, listUpcomingMaintenances, getIncident, listComponents, getComponentUptime |
| Team member allowed to manage incidents | createIncident, updateIncident, updateComponent |
Common errors
- 401 Unauthorized: the header is missing the
OAuthprefix or the key was revoked. - 403 Forbidden: your user has no access to this page, or the plan does not include the feature.
- 404 Not Found: wrong
page_id,incident_idorcomponent_id; ids are short strings likekctbh9vrtdwd. - 400 / 422: invalid status value (use
investigating,identified,monitoring,resolved; components useoperational,degraded_performance,partial_outage,major_outage,under_maintenance). - 420 / 429: rate limited (1 request per second per key); wait and retry.
Store the value as a VX Agents credential for this spec; never paste it into chat.
Usage guide
Setup
- Credential: a Statuspage API key (manage.statuspage.io > user menu > API info). Save it as
OAuth <key>: theOAuthprefix is part of the header value. - Worth pinning:
page_id(fromlistPages; a short id likekctbh9vrtdwd). Most teams have one page.
Run an incident
listPagesto getpage_id, thenlistComponentsto get component ids and their current status.listUnresolvedIncidentsto check that nobody has opened the incident already.createIncidentwithincident.name,incident.status(investigating),incident.body(the first public message),incident.component_idsandincident.components(map of id to status, e.g.{"kctbh9vrtdwd": "partial_outage"}). Setdeliver_notifications: falseto post without emailing subscribers.- As things progress,
updateIncidentwith a newstatus(identified,monitoring,resolved) and abody; each call adds a public update. Set the components back tooperationalwhen resolved. - Outside an incident,
updateComponentwithcomponent.statuschanges a component's colour on the page. getIncidentshows the full timeline;listIncidents(withq) searches history;listUpcomingMaintenanceslists planned work;getComponentUptime(start/endasYYYY-MM-DD) reports uptime.
Always show the user the exact text and status before createIncident, updateIncident or updateComponent: they publish to your public status page and usually notify every subscriber by email/SMS.
Good to know
- Scheduled maintenance is created with
createIncidenttoo: usestatus: scheduledwithscheduled_forandscheduled_until(ISO 8601). impact_override(none,minor,major,critical) sets the banner colour; otherwise it is calculated from component statuses.- Rate limit: 1 request per second per key (60-second rolling window); 420 or 429 means slow down.
- List endpoints page with
pageandper_page;listIncidentsuseslimitandpage.
Source: Atlassian Statuspage API reference (https://developer.statuspage.io/), checked 2026-10-21.
How to use this spec
- Create a free VX Agents account (sandbox tools included).
- Open the marketplace and connect “Statuspage Incidents & Components” to an agent.
- Expose it as an MCP server for Claude/ChatGPT, or chat with it directly.