Incidents API

Create and list incidents for an organization. All endpoints require session authentication.

GET /v1/organizations/{orgID}/incidents

List incidents for an organization. Returns up to 50 most recent incidents.

ParameterTypeRequiredDescription
orgIDstringYesOrganization ID (URL parameter)
Response (200 OK)
[
  {
    "id": "a1b2c3d4e5f6...",
    "organization_id": "org_id_here",
    "title": "Database Outage",
    "status": "investigating",
    "impact": "critical",
    "started_at": "2026-02-20T10:00:00Z",
    "resolved_at": null,
    "created_at": "2026-02-20T10:00:00Z",
    "updated_at": "2026-02-20T10:30:00Z"
  }
]
POST /v1/organizations/{orgID}/incidents

Create a new incident. Status defaults to 'investigating'. Subscribers are notified automatically.

ParameterTypeRequiredDescription
orgIDstringYesOrganization ID (URL parameter)
titlestringYesIncident title
impactstringYesImpact level: none, minor, major, or critical
component_idsstring[]NoIDs of affected components
Request
curl -X POST https://api.pingpage.live/v1/organizations/{'{orgID}'}/incidents \
  -H "Content-Type: application/json" \
  -b "session_token=your_token" \
  -d '{
    "title": "Database Outage",
    "impact": "critical",
    "component_ids": ["comp_id_1"]
  }'
Response (201 Created)
{
  "id": "a1b2c3d4e5f6...",
  "organization_id": "org_id_here",
  "title": "Database Outage",
  "status": "investigating",
  "impact": "critical",
  "started_at": "2026-02-20T10:30:00Z",
  "resolved_at": null,
  "created_at": "2026-02-20T10:30:00Z",
  "updated_at": "2026-02-20T10:30:00Z"
}

Incident Statuses

  • investigating — team is looking into the issue (default on creation)
  • identified — root cause has been found
  • monitoring — fix applied, watching for recurrence
  • resolved — incident is over

Impact Levels

  • none — informational, no service impact
  • minor — small impact, most users unaffected
  • major — significant impact on some services
  • critical — widespread outage across services