---
title: "List incidents"
method: GET
path: "/incidents"
tags: ["Incidents"]
---

# List incidents

`GET /incidents`

## Request

- Base URL: `https://api.spectate.net/v1`
- URL: `https://api.spectate.net/v1/incidents`
- Auth: HTTP bearer

Returns the team's incidents, most recently started first unless you sort.

## Query parameters

- `page` integer
- `per_page` integer
- `filter[status]` 'investigating' | 'identified' | 'monitoring' | 'resolved': Where an incident stands. | | |---| | `investigating` <br/> Declared; the cause isn't known yet. | | `identified` <br/> Acknowledged: the cause is known and someone works on it. | | `monitoring` <br/> A fix is out; watching whether it holds. | | `resolved` <br/> Over. |
- `filter[severity]` 'critical' | 'high' | 'medium' | 'low': How urgent an alert or incident is. Escalation paths can branch on it. | | |---| | `critical` <br/> Customers are affected right now. | | `high` <br/> Serious, needs attention soon. | | `medium` <br/> Should be looked at. | | `low` <br/> Informational. |
- `filter[title]` string
- `sort` string

## Response `200`

Paginated set of `Incident`

- object
  - `current_page` integer, required
  - `data` Incident[], required
    - `id` string, uuid, required: Incident ID
    - `number` integer, nullable, required: The team's sequence number: `INC-42` is 42. `null` for some older incidents
    - `reference` string, required: The human reference
    - `title` string, required: What's going on
    - `summary` string, nullable, required: More about it, in Markdown
    - `severity` 'critical' | 'high' | 'medium' | 'low', required: How urgent an alert or incident is. Escalation paths can branch on it. | | |---| | `critical` <br/> Customers are affected right now. | | `high` <br/> Serious, needs attention soon. | | `medium` <br/> Should be looked at. | | `low` <br/> Informational. |
    - `status` 'investigating' | 'identified' | 'monitoring' | 'resolved', required: Where an incident stands. | | |---| | `investigating` <br/> Declared; the cause isn't known yet. | | `identified` <br/> Acknowledged: the cause is known and someone works on it. | | `monitoring` <br/> A fix is out; watching whether it holds. | | `resolved` <br/> Over. |
    - `started_at` string, date-time, required: When it started
    - `acknowledged_at` string, date-time, nullable, required: When someone acknowledged it
    - `resolved_at` string, date-time, nullable, required: When it was resolved
    - `alert_id` string, uuid, nullable, required: The alert that opened it, for incidents declared by an escalation path
    - `roles` IncidentRoleAssignment[], required: Who has which role
      - `role` 'commander' | 'communications_lead', required: A role in handling an incident; one member each. | | |---| | `commander` <br/> Leads the response and makes the calls. | | `communications_lead` <br/> Keeps customers and the company informed, for example through the status page. |
      - `member` MemberReference, required: A member of the team.
        - `id` string, uuid, required: Member (user) ID
        - `name` string, required: Name
        - `email` string, email, required: Email address
    - `created_at` string, date-time, required: When it was declared
  - `first_page_url` string, nullable, required
  - `from` integer, nullable, required
  - `last_page_url` string, nullable, required
  - `last_page` integer, required
  - `links` object[], required: Generated paginator links.
    - `url` string, nullable, required
    - `label` string, required
    - `active` boolean, required
  - `next_page_url` string, nullable, required
  - `path` string, nullable, required: Base path for paginator generated URLs.
  - `per_page` integer, required: Number of items shown per page.
  - `prev_page_url` string, nullable, required
  - `to` integer, nullable, required: Number of the last item in the slice.
  - `total` integer, required: Total number of items being paginated.

## Other responses

- `401`: `UNAUTHENTICATED`: no token was sent. `INVALID_TOKEN`: the token is unknown or revoked. `TOKEN_EXPIRED`: the token has expired.
- `403`: `FORBIDDEN`: the token lacks an ability this endpoint requires (listed in `details.required_abilities`). `TEAM_PENDING_DELETION`: the team is scheduled for deletion. `TEAM_SUSPENDED`: Spectate suspended the team.
- `429`: `RATE_LIMITED`: too many requests for this token. Wait for the number of seconds in `Retry-After`.

---

[API](https://skmtc.dev/spectate/apis/spectate-api.md) - [All operations](https://skmtc.dev/spectate/apis/spectate-api/llms.txt) - [OpenAPI document](https://skmtc.dev/spectate/apis/spectate-api/revisions/9b1a233997de?raw)
