---
title: "Create an emergency template"
method: POST
path: "/v1/emergency-templates"
tags: ["emergency-templates"]
---

# Create an emergency template

`POST /v1/emergency-templates`

## Request

- Base URL: `https://api.brixsignage.com`
- URL: `https://api.brixsignage.com/v1/emergency-templates`
- Auth: HTTP bearer

Create a reusable emergency recipe with a `name`, `contentKind`, `contentId`, `scope`, `severity`, and an optional `prestage` flag. Trigger it later with POST /v1/emergencies/from-template/:templateId.

## Request body

- object
  - `name` string: Default "Untitled template".
  - `headline` string: Default "Emergency".
  - `body` string
  - `severity` 'info' | 'warning' | 'critical': Default `critical`.
  - `contentKind` 'media' | 'creative' | 'playlist' | 'app'
  - `contentId` string
  - `scopeKind` 'all' | 'node' | 'screens': Default `all`.
  - `scopeNodeId` string: Required with `scopeKind: node`.
  - `nodeId` string: Home location. Default: the API key's location, else the workspace root.
  - `prestage` boolean

## Response `201`

Success.

- object
  - `data` EmergencyTemplate, required: A pre-armed emergency recipe.
    - `id` string, required: Emergency template id.
    - `spaceId` string, required
    - `name` string, required
    - `severity` 'info' | 'warning' | 'critical', required
    - `headline` string, required
    - `body` string, nullable, required
    - `contentKind` 'media' | 'creative' | 'playlist' | 'app', nullable, required
    - `contentId` string, nullable, required
    - `scopeKind` 'all' | 'node' | 'screens', required
    - `scopeNodeId` string, nullable, required
    - `nodeId` string, nullable, required: Home location (null = workspace root); permissions are checked here.
    - `prestage` boolean, required: Content is cached on every in-scope screen before any trigger.
    - `createdAt` string, required: ISO-8601 timestamp (UTC).
    - `updatedAt` string, required: ISO-8601 timestamp (UTC).
    - `deletedAt` string, nullable, required: ISO-8601 timestamp (UTC).

## Other responses

- `401`: Missing, expired or revoked bearer token.
- `403`: Missing `emergency-override.edit` at the home or scope location.
- `404`: The content or a location does not exist in this workspace.
- `422`: A content kind outside media/creative/playlist/app, a half content pointer, or `scopeKind: node` without `scopeNodeId`.
- `5XX`: Server error. The body carries a `requestId` to quote to support.

---

[API](https://skmtc.dev/brixsignage/apis/brix-api.md) · [All operations](https://skmtc.dev/brixsignage/apis/brix-api/llms.txt) · [OpenAPI document](https://skmtc.dev/brixsignage/apis/brix-api/revisions/02fd3665dc7d?raw)
