Skip to content
Help Center
Products

API Reference

GET /api/v1/public/incidents

Return incidents

Returns incidents for the account the API key belongs to, newest first (ordered by creation date, descending). This is the only paginated endpoint, and it accepts no filter or sort parameters.

operationId Return incidents

Query parameters

Name Type Required Description
page integer optional 1-based page number.
limit integer optional Page size. A value above 200 is reduced to 200 rather than rejected.

Responses

200 A page of incidents, with page counters alongside.

Response headers

NameTypeDescription
X-RateLimit-Limit integer Your hourly allowance.
X-RateLimit-Remaining integer Requests left in the current window.
X-RateLimit-Reset integer When the window resets, as an absolute Unix epoch time in seconds — not a countdown.

application/json body

Field Type Required Description
error boolean required Always `false` on a successful response. Authentication and rate-limit failures instead return a string error code in this field.
data object required Payload wrapper. Note the nested `data` — this endpoint is the only one whose payload is an object rather than a bare array.
data array required The incidents on this page.
id string (uuid) required Incident identifier.
incident_number string required Human-readable reference, e.g. `INC-2026-0001`.
description string optional Incident description.
status string required Workflow status, e.g. `open`.
severity_score integer optional Calculated severity — `severity_likelihood` × `severity_impact`.
severity_likelihood integer optional Likelihood rating.
severity_impact integer optional Impact rating.
location string optional Location name.
incident_date string (date) optional Date the incident occurred.
created_at string (date-time) required When the incident was created.
updated_at string (date-time) required When the incident was last updated.
pagination object required Page counters.
page integer required Current page number.
limit integer required Page size in effect.
total integer required Total incidents in the account.
pages integer required Total pages at the current `limit`.

Example

{
  "error": false,
  "data": {
    "data": [
      {
        "id": "3f1c…",
        "incident_number": "INC-2026-0001",
        "description": "Spill in loading bay 3",
        "status": "open",
        "severity_score": 12,
        "severity_likelihood": 3,
        "severity_impact": 4,
        "location": "Plant A",
        "incident_date": "2026-08-01",
        "created_at": "2026-08-01T10:00:00.000Z",
        "updated_at": "2026-08-02T09:00:00.000Z"
      }
    ],
    "pagination": {
      "page": 1,
      "limit": 50,
      "total": 137,
      "pages": 3
    }
  }
}

401 `API_KEY_REQUIRED` — the `Authorization: Bearer kcs_…` header is missing or malformed. `API_KEY_INVALID` — the key is unknown, revoked, or expired.

403 `INSUFFICIENT_SCOPE` — the key's scope does not permit this method. `FEATURE_NOT_AVAILABLE` — the account's plan does not include API access.

429 `RATE_LIMIT_EXCEEDED` — the hourly limit was reached. Read `Retry-After` (seconds); `X-RateLimit-Reset` is not set on a 429.

Response headers

NameTypeDescription
Retry-After integer Seconds to wait before retrying.

500 Unexpected server error.