> ## Documentation Index
> Fetch the complete documentation index at: https://docs.atako.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Statuspage

> Connect Statuspage to your Atako agents — 9 read and 5 write actions.

Let your agents read your status pages and components, update component statuses, and open, update and resolve incidents and scheduled maintenances via the Statuspage API.

## Connection

* **Authentication**: API key (Statuspage API key).

<Note>
  Sign in to manage.statuspage.io as an account owner (only account owners can create keys) → select your avatar at the bottom left → API info → Create key. Enter a key name, copy the key (it is shown only at creation) and select Confirm. The key covers the whole organization: Statuspage offers no per-key permissions.

  See [Statuspage's documentation](https://support.atlassian.com/statuspage/docs/create-and-manage-api-keys/).
</Note>

## Read actions (9)

| Action | Description |
| - | - |
| `get_component` | Retrieve one component of a page. |
| `get_incident` | Retrieve one incident or scheduled maintenance, with its updates and affected components. |
| `get_page` | Retrieve one status page profile (name, URL, time zone, subscriber settings, branding). |
| `list_components` | List the components of a page with their current status. Paginated: page (integer, starts at 1), per\_page (integer 1-100, default 100). |
| `list_incidents` | List the incidents of a page. Optional q (string) searches the name, status, postmortem and updates; limit (integer 1-100, default 100); page (integer, starts at 1). |
| `list_pages` | List the status pages of the organization (gives each page\_id used by every other action). |
| `list_scheduled_maintenances` | List the scheduled maintenances of a page. Paginated: page (integer, starts at 1), per\_page (integer 1-100, default 100). |
| `list_subscribers` | List the subscribers of a page. Optional filters: q (string, searches e-mail, endpoint or phone number); type ("email", "sms", "webhook", "slack", "teams" or "integration\_partner"); state ("active" by default, "unconfirmed", "quarantined" or "all"); limit (integer 1-100, default 100); page (integer, starts at 0); sort\_field ("primary", "created\_at", "quarantined\_at" or "relevance" — relevance only with q); sort\_direction ("asc" or "desc"). |
| `list_unresolved_incidents` | List the unresolved incidents of a page. Paginated: page (integer, starts at 1), per\_page (integer 1-100, default 100). |

## Write actions (5)

| Action | Description |
| - | - |
| `create_incident` | Open a realtime incident. Flat arguments, wrapped for you into \{ incident: \{…} }: page\_id: string (see list\_pages); name: string (max 255 characters); status: optional string "investigating", "identified", "monitoring" or "resolved"; body: optional string (first update message, max 25000 characters); impact\_override: optional string "none", "maintenance", "minor", "major" or "critical"; component\_ids: optional array of strings (affected component IDs, see list\_components); components: optional object mapping a component ID to its new status ("operational", "under\_maintenance", "degraded\_performance", "partial\_outage" or "major\_outage"), e.g. \{"abc123": "major\_outage"}; deliver\_notifications: optional boolean (false = do not notify subscribers, default true). |
| `create_scheduled_maintenance` | Schedule a maintenance (an incident with status "scheduled"). Flat arguments, wrapped for you into \{ incident: \{ status: "scheduled", … } }: page\_id: string; name: string (max 255 characters); scheduled\_for: string (start, ISO 8601 date-time, e.g. "2026-10-01T22:00:00Z"); scheduled\_until: string (end, ISO 8601 date-time); body: optional string (message, max 25000 characters); component\_ids: optional array of strings (affected component IDs, see list\_components); scheduled\_remind\_prior: optional boolean (remind subscribers before the start); scheduled\_auto\_in\_progress: optional boolean (switch to in progress at the start); scheduled\_auto\_completed: optional boolean (switch to completed at the end); auto\_transition\_to\_maintenance\_state: optional boolean (set the components to under\_maintenance while in progress); auto\_transition\_to\_operational\_state: optional boolean (set the components back to operational at the end); deliver\_notifications: optional boolean (false = do not notify subscribers). |
| `resolve_incident` | Resolve an incident. Sends \{ incident: \{ status: "resolved", … } }. Arguments: page\_id: string; incident\_id: string (see list\_unresolved\_incidents); body: optional string (resolution message, posted as the final update, max 25000 characters); components: optional object mapping a component ID to its new status, e.g. \{"abc123": "operational"}; deliver\_notifications: optional boolean (false = do not notify subscribers). |
| `update_component_status` | Change the status of one component. Sends \{ component: \{ status } }. Arguments: page\_id: string (see list\_pages); component\_id: string (see list\_components); status: string, one of "operational", "under\_maintenance", "degraded\_performance", "partial\_outage", "major\_outage". |
| `update_incident` | Update an incident or a scheduled maintenance; with a body, the change is posted as a new incident update. Flat arguments, wrapped for you into \{ incident: \{…} }: page\_id: string; incident\_id: string (see list\_incidents); status: optional string — for an incident "investigating", "identified", "monitoring" or "resolved", for a maintenance "scheduled", "in\_progress", "verifying" or "completed"; body: optional string (update message, max 25000 characters); name: optional string (new title, max 255 characters); impact\_override: optional string "none", "maintenance", "minor", "major" or "critical"; component\_ids: optional array of strings (affected component IDs); components: optional object mapping a component ID to its new status, e.g. \{"abc123": "operational"}; deliver\_notifications: optional boolean (false = do not notify subscribers). |

## Permissions

Every action above must be explicitly granted to an agent before it can be used. See [Permissions](/integrations/permissions) for the grant model and [Security](/integrations/security) for how credentials are protected.

***

*Last reviewed against the provider API: September 2026.*


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.