StatusDashboard
Events

Re-open incident

Re-open a resolved incident, clearing its resolved state and adding a new timeline entry.

View Markdown

POST /app/events/{id}/reopen

Re-opens a resolved incident. Atomically clears the resolved state, removes the end time, updates the current status to the specified non-final workflow phase, and appends a new timeline entry. Returns the full updated event object.

This endpoint is only valid for incident events that are currently resolved (resolvedAt is set). Use the Create timeline entry endpoint to post status updates during an active incident. Once resolved, non-final timeline updates are rejected — you must use this re-open endpoint instead.

Path parameters

ParameterDescription
idThe event ID.

Request

See API Basics for required headers.

Request body

FieldTypeRequiredDescription
statusLabelstringYesA non-final workflow phase label for the incident workflow.
messagestringYesThe message explaining why the incident is being re-opened. Max 5,000 characters.

Sample request

curl -X POST https://api.statusdashboard.com/app/events/4f8b2e1a-3c7d-4e9f-a0b1-c2d3e4f56789/reopen \
  -H "Authorization: Bearer bcf847abf5c6:def456" \
  -H "Content-Type: application/json" \
  -d '{
    "statusLabel": "Investigating",
    "message": "The issue has recurred. We are re-investigating."
  }'

Sample response

Status: 200 OK

{
  "event": {
    "id": "4f8b2e1a-3c7d-4e9f-a0b1-c2d3e4f56789",
    "eventType": "incident",
    "title": "API latency elevated",
    "status": { "label": "Investigating", "isFinal": false, "isScheduled": false },
    "severity": { "label": "Degraded Performance", "description": "Some functionality is impaired.", "icon": "alert-triangle", "color": "#f59e0b" },
    "affectedComponents": {
      "6b0d3a8c-5e2f-4b7d-9c1e-f23456789abc": {
        "name": "API Gateway",
        "status": { "label": "Degraded Performance", "description": "Some functionality is impaired.", "icon": "alert-triangle", "color": "#f59e0b" }
      }
    },
    "description": "We are investigating elevated API response times.",
    "startTime": "2026-04-25T09:45:00.000Z",
    "endTime": null,
    "resolvedAt": null,
    "publish": true,
    "notifications": true,
    "timeline": [
      {
        "statusId": "7a3f9d2e-1b4c-4e8a-90b2-c3d4e5f67890",
        "timestamp": "2026-04-25T11:20:00.000Z",
        "status": { "label": "Resolved", "description": "Issue is resolved.", "color": "#22c55e", "icon": "check-circle" },
        "message": "The incident has been resolved.",
        "author": "alice@example.com",
        "isEdited": false
      },
      {
        "statusId": "9d1a4f7b-2c5e-4f8b-a1c3-d4e5f6789012",
        "timestamp": "2026-04-25T12:05:00.000Z",
        "status": { "label": "Investigating", "description": "We are looking into the issue.", "color": "#D97706", "icon": "search" },
        "message": "The issue has recurred. We are re-investigating.",
        "author": "alice@example.com",
        "isEdited": false
      }
    ],
    "createdAt": "2026-04-25T09:45:00.000Z",
    "updatedAt": "2026-04-25T12:05:00.000Z"
  }
}

Error responses

StatusWhen
400Validation error — missing fields, invalid statusLabel, statusLabel maps to a final phase, event is not an incident, or event is not currently resolved.
403Insufficient permissions, or too many incidents are currently open for this organization.
404Event not found.

On this page

We use cookies

We use essential cookies to keep the site working, and optional analytics cookies to understand how it's used. Read our Privacy Policy.