StatusDashboard
Templates

Create template

Create a reusable event template blueprint.

View Markdown

POST /app/templates

Creates an org-scoped event template. Requires the templates feature. Soft limit limits.templates is enforced — returns 403 when at capacity.


Request

See API Basics for required headers.

Request body

Discriminated by eventType. All types require name, title, and description.

FieldTypeRequiredDescription
namestringYesTemplate list name. 1–100 characters. Not unique.
eventTypestringYes"incident", "maintenance", or "informational". Immutable after create.
titlestringYesDefault event title. Max 250 characters.
descriptionstringYesRich text body. Max 5,000 characters.
coordinatorobjectNoSame shape as event coordinator.
notificationsbooleanNoDefault true.
segmentNotificationobjectNoRequires segments feature when provided.
attributesarrayNoCustom attributes. Subject to limits.attributes when present.
impactAnalysisstringNoIncident and maintenance only. Max 5,000 characters.
maintenanceAutomationobjectNoMaintenance only. Relative automation config (no absolute times).

Rejected with 400 if present: affectedComponents, statusLabel, initialTimelineMessage, publish, startTime, endTime.


Sample request

curl -X POST https://api.statusdashboard.com/app/templates \
  -H "Authorization: Bearer bcf847abf5c6:def456" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "API outage playbook",
    "eventType": "incident",
    "title": "API service disruption",
    "description": "<p>We are investigating elevated error rates.</p>",
    "notifications": true
  }'

Sample response

Status: 201 Created

{
  "template": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "API outage playbook",
    "eventType": "incident",
    "title": "API service disruption",
    "description": "<p>We are investigating elevated error rates.</p>",
    "notifications": true,
    "createdAt": "2026-06-01T12:00:00.000Z",
    "updatedAt": "2026-06-01T12:00:00.000Z"
  }
}

Applying a template

Templates are applied client-side when creating events. Fetch the template, map playbook fields onto the event create form, then POST /app/events with instance fields (components, status, timeline message, times, publish). See Using a template.


Error responses

StatusWhen
400Validation failure or rejected instance-only fields in the body.
403Templates feature not enabled, insufficient role, or template quota reached.

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.