Skip to content
bynhDocs

Report an incident

POST/workspaces/{workspace}/status/incidents

Opens an incident with its first update. With publish: true it goes on your status page now; with notify: true confirmed subscribers are emailed. Otherwise it stays a draft.

Authentication

Send an API token as a bearer token. This endpoint needs a read and write token, made by an editor, admin or owner. Create one in My account → API tokens; see scopes and roles.

Authorization: Bearer 42|bynh_pat_•••••••Header

Path parameters

  • workspacestringRequired

    Your workspace slug, e.g. dokan.

Request body

application/json
  • titlestringRequiredmax 160

    What’s happening.

  • statusenumRequired

    resolved opens and closes it at once. One of investigating, identified, monitoring, resolved.

  • bodystringRequiredmax 5000

    First update for customers.

  • componentsstringRequiredmax 50

    id: a component of this workspace (distinct). impact: degraded, partial_outage or major_outage. Sending it on update replaces the set.

  • notifybooleanRequired

    Email confirmed subscribers.

  • publishbooleanRequired

    Post now (true) or keep as a draft (false).

Response

201 Created

Incident with updates.

  • idintegerIncident id.
  • titlestringTitle.
  • statusenumCurrent stage. One of investigating, identified, monitoring, resolved.
  • status_labelstringLocalized.
  • impactenumWorst impact across its components. One of operational, maintenance, degraded, partial_outage, major_outage.
  • impact_labelstringLocalized.
  • sourceenumautomatic: opened by a monitor. One of manual, automatic.
  • draftbooleanNot yet posted (published_at is null).
  • notify_subscribersbooleanSubscribers get emails for it.
  • started_atstringISO 8601.
  • published_atstring|nullISO 8601.
  • resolved_atstring|nullISO 8601.
  • duration_minutesintegerAt least 1; counts to now while open.
  • monitor{id, name}|nullMonitor that opened it.
  • components[]{id, name, impact, impact_label}Affected components.
  • updates_countinteger|nullNumber of updates.
  • updates[]objectid, status, status_label, body, author (name|null), notified_at, created_at. Empty in lists.

Rate limits

This endpoint counts toward your general limit of 120 requests a minute and its own limit of 30 an hour. Its own limit answers 429 without Retry-After; wait and try again.

Errors

401The token is missing, wrong, revoked or expired.
403The token is read-only (message: “This token is read-only. Create a read and write token to make changes.”). Or: The token’s owner is a viewer (“Viewers can read everything but can’t change it.”), or the workspace’s editing is paused (a billing message, e.g. “Your trial has ended, so editing is paused. …”).
404The token belongs to another workspace, or its owner is no longer a member.
422“Say what’s happening in a few words, like “Checkout is slow”.”, “Write an update for customers. Plain words work best.”, “One of those components no longer exists. Remove it and try again.”, “Pick degraded, partial outage or down for each component.”
429More than 30 incident posts an hour (“Too many attempts. Wait a few minutes, then try again.”).

Every error is JSON with a message. See Errors.

Next →Get an incident
curl -X POST "https://api.bynh.io/api/v1/workspaces/dokan/status/incidents" \
  -H "Authorization: Bearer $BYNH_TOKEN" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Checkout is slow",
    "status": "investigating",
    "body": "Some card payments are taking longer than usual. We’re looking into it.",
    "components": [
      {
        "id": 2,
        "impact": "degraded"
      }
    ],
    "notify": true,
    "publish": true
  }'

Response201 Created

application/json
{
  "data": {
    "id": 19,
    "title": "Checkout is slow",
    "status": "investigating",
    "status_label": "Investigating",
    "impact": "degraded",
    "impact_label": "Degraded",
    "source": "manual",
    "draft": false,
    "notify_subscribers": true,
    "started_at": "2026-10-01T06:40:00+00:00",
    "published_at": "2026-10-01T06:41:12+00:00",
    "resolved_at": null,
    "duration_minutes": 1,
    "monitor": null,
    "components": [
      {
        "id": 2,
        "name": "Checkout",
        "impact": "degraded",
        "impact_label": "Degraded"
      }
    ],
    "updates_count": 1,
    "updates": [
      {
        "id": 51,
        "status": "investigating",
        "status_label": "Investigating",
        "body": "Some card payments are taking longer than usual. We’re looking into it.",
        "author": "Sara Alqahtani",
        "notified_at": "2026-10-01T06:41:20+00:00",
        "created_at": "2026-10-01T06:41:12+00:00"
      }
    ]
  }
}

Examples use Dokan, a sample workspace. Responses are shortened where lists are long.