Squadcast Incidents API

Incident lifecycle and bulk operations

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/squadcast-incidents-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 email required.

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

OpenAPI Specification

squadcast-incidents-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Squadcast Public Authentication Incidents API
  description: 'Public REST API for the Squadcast (SolarWinds Incidents Cloud) incident

    response and on-call management platform. The API exposes incident

    management operations — including bulk acknowledge/resolve, individual

    incident lookup, reassignment, priority updates, exports, and request

    status checks.


    Authentication uses HTTP Bearer access tokens. Access tokens are

    short-lived and exchanged from a long-lived refresh token via the

    `/oauth/access-token` endpoint on the auth host. Send subsequent API

    requests with `Authorization: Bearer <access_token>` against the regional

    API host.

    '
  version: 3.0.0
  contact:
    name: Squadcast Support
    url: https://support.squadcast.com/
servers:
- url: https://api.squadcast.com
  description: US region API host
- url: https://api.eu.squadcast.com
  description: EU region API host
- url: https://auth.squadcast.com
  description: US region auth host (used only for /oauth/access-token)
- url: https://auth.eu.squadcast.com
  description: EU region auth host (used only for /oauth/access-token)
security:
- bearerAuth: []
tags:
- name: Incidents
  description: Incident lifecycle and bulk operations
paths:
  /v3/incidents/{incidentID}:
    get:
      tags:
      - Incidents
      summary: Get incident by ID
      description: Retrieve full details of a single incident by its identifier.
      operationId: getIncidentById
      parameters:
      - $ref: '#/components/parameters/IncidentID'
      responses:
        '200':
          description: Incident details
          content:
            application/json:
              schema:
                type: object
        '404':
          description: Incident not found
  /v3/incidents/{incidentID}/acknowledge:
    post:
      tags:
      - Incidents
      summary: Acknowledge an incident
      description: Acknowledge a single incident by ID.
      operationId: acknowledgeIncident
      parameters:
      - $ref: '#/components/parameters/IncidentID'
      responses:
        '200':
          description: Incident acknowledged
  /v3/incidents/{incidentID}/resolve:
    post:
      tags:
      - Incidents
      summary: Resolve an incident
      description: 'Resolve a single incident by ID. A `resolution_reason` object describing

        why the incident is being resolved is required in the request body.

        '
      operationId: resolveIncident
      parameters:
      - $ref: '#/components/parameters/IncidentID'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - resolution_reason
              properties:
                resolution_reason:
                  type: object
                  required:
                  - message
                  properties:
                    message:
                      type: string
                      description: Free-form reason describing the resolution.
      responses:
        '200':
          description: Incident resolved
  /v3/incidents/{incidentID}/events:
    get:
      tags:
      - Incidents
      summary: List incident events
      description: Retrieve the event timeline for an incident with pagination.
      operationId: listIncidentEvents
      parameters:
      - $ref: '#/components/parameters/IncidentID'
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          minimum: 0
      - name: limit
        in: query
        required: false
        description: Maximum number of events to return (max 10).
        schema:
          type: integer
          maximum: 10
      - name: sort
        in: query
        required: false
        schema:
          type: string
      - name: deduped
        in: query
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: Paginated list of incident events
  /v3/incidents/{incidentID}/reassign:
    post:
      tags:
      - Incidents
      summary: Reassign an incident
      description: 'Reassign an incident to a different user, escalation policy, or squad.

        The `reassignTo` object requires both an `id` and a `type`.

        '
      operationId: reassignIncident
      parameters:
      - $ref: '#/components/parameters/IncidentID'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - reassignTo
              properties:
                reassignTo:
                  type: object
                  required:
                  - id
                  - type
                  properties:
                    id:
                      type: string
                    type:
                      type: string
                      enum:
                      - user
                      - escalationpolicy
                      - squad
      responses:
        '200':
          description: Incident reassigned
  /v3/incidents/{incidentID}/priority:
    patch:
      tags:
      - Incidents
      summary: Update a single incident's priority
      operationId: updateIncidentPriority
      parameters:
      - $ref: '#/components/parameters/IncidentID'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - priority
              properties:
                priority:
                  type: string
      responses:
        '200':
          description: Incident priority updated
  /v3/incidents/acknowledge:
    post:
      tags:
      - Incidents
      summary: Bulk acknowledge incidents
      description: 'Acknowledge up to 100 incidents in a single call. Rate limit: 10 calls

        per minute.

        '
      operationId: bulkAcknowledgeIncidents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkIncidentIds'
      responses:
        '200':
          description: Incidents acknowledged
  /v3/incidents/resolve:
    post:
      tags:
      - Incidents
      summary: Bulk resolve incidents
      description: 'Resolve up to 100 incidents in a single call. Rate limit: 10 calls per

        minute.

        '
      operationId: bulkResolveIncidents
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkIncidentIds'
      responses:
        '200':
          description: Incidents resolved
  /v3/incidents/priority:
    put:
      tags:
      - Incidents
      summary: Bulk update incident priority
      operationId: bulkUpdateIncidentPriority
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - incident_ids
              - priority
              properties:
                incident_ids:
                  type: array
                  items:
                    type: string
                priority:
                  type: string
      responses:
        '200':
          description: Priorities updated
  /v3/incidents/export:
    get:
      tags:
      - Incidents
      summary: Export incidents
      description: Export incident details as CSV or JSON.
      operationId: exportIncidents
      parameters:
      - name: type
        in: query
        required: true
        description: Export format (e.g. csv, json).
        schema:
          type: string
      - name: start_time
        in: query
        required: true
        schema:
          type: string
          format: date-time
      - name: end_time
        in: query
        required: true
        schema:
          type: string
          format: date-time
      - name: owner_id
        in: query
        required: true
        schema:
          type: string
      - name: status
        in: query
        required: false
        schema:
          type: string
      - name: services
        in: query
        required: false
        schema:
          type: string
      - name: sources
        in: query
        required: false
        schema:
          type: string
      - name: assigned_to
        in: query
        required: false
        schema:
          type: string
      - name: priority
        in: query
        required: false
        schema:
          type: string
      - name: tags
        in: query
        required: false
        schema:
          type: string
      - name: slo_affecting
        in: query
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: Export payload
  /v3/incidents/export/async:
    post:
      tags:
      - Incidents
      summary: Export incidents asynchronously
      description: 'Kick off an async export job. Returns 202 and emails the download link

        when the export completes.

        '
      operationId: exportIncidentsAsync
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - owner_id
              - type
              - start_time
              - end_time
              - incident_filters
              properties:
                owner_id:
                  type: string
                type:
                  type: string
                start_time:
                  type: string
                  format: date-time
                end_time:
                  type: string
                  format: date-time
                incident_filters:
                  type: object
      responses:
        '202':
          description: Export job accepted
components:
  schemas:
    BulkIncidentIds:
      type: object
      required:
      - incident_ids
      properties:
        incident_ids:
          type: array
          description: Up to 100 incident identifiers.
          maxItems: 100
          items:
            type: string
  parameters:
    IncidentID:
      name: incidentID
      in: path
      required: true
      description: Unique identifier of the incident.
      schema:
        type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'Bearer access token obtained via the `/oauth/access-token` endpoint on

        the auth host. Send as `Authorization: Bearer <access_token>`.

        '