Emergency templates API

Emergency templates endpoints in the Brix REST API: 4 operations (GET, POST, PATCH, DELETE), with auth, permissions and curl examples.

View as Markdown

Base URL https://api.brixsignage.com. Send Authorization: Bearer $BRIX_API_KEY unless an operation says No auth. The permission chip names what the key must hold. See Authentication and scopes, Errors and rate limits and Pagination.

GET/v1/emergency-templates

Bearer token emergency-override.view

List pre-configured emergency recipes, such as Lockdown, Severe weather, or Fire drill, used for one-click triggering. A template with prestage set to true has its content cached on every screen in scope in advance, before it is ever triggered.

curl "https://api.brixsignage.com/v1/emergency-templates" \
  -H "Authorization: Bearer $BRIX_API_KEY"

Response 200 Success.

FieldTypeDescription
dataarray of EmergencyTemplate
data[].idstringEmergency template id.
data[].spaceIdstring
data[].namestring
data[].severity"info" | "warning" | "critical"
data[].headlinestring
data[].bodystring | null
data[].contentKind"media" | "creative" | "playlist" | "app" | null
data[].contentIdstring | null
data[].scopeKind"all" | "node" | "screens"
data[].scopeNodeIdstring | null
data[].nodeIdstring | nullHome location (null = workspace root); permissions are checked here.
data[].prestagebooleanContent is cached on every in-scope screen before any trigger.
data[].createdAtstringISO-8601 timestamp (UTC).
data[].updatedAtstringISO-8601 timestamp (UTC).
data[].deletedAtstring | null

Response 401 Missing, expired or revoked bearer token.

FieldTypeDescription
errorstringMachine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, …
messagestringHuman-readable explanation. Safe to show an operator.
requestIdstringPresent on 5xx: quote it to support.

Response 403 The token lacks the permission this operation needs (see `x-brix-permission`).

FieldTypeDescription
errorstringMachine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, …
messagestringHuman-readable explanation. Safe to show an operator.
requestIdstringPresent on 5xx: quote it to support.

Response 5XX Server error. The body carries a `requestId` to quote to support.

FieldTypeDescription
errorstringMachine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, …
messagestringHuman-readable explanation. Safe to show an operator.
requestIdstringPresent on 5xx: quote it to support.

POST/v1/emergency-templates

Bearer token emergency-override.edit

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 application/json

FieldTypeRequiredDescription
namestringnoDefault "Untitled template".
headlinestringnoDefault "Emergency".
bodystringno
severity"info" | "warning" | "critical"noDefault `critical`.
contentKind"media" | "creative" | "playlist" | "app"no
contentIdstringno
scopeKind"all" | "node" | "screens"noDefault `all`.
scopeNodeIdstringnoRequired with `scopeKind: node`.
nodeIdstringnoHome location. Default: the API key's location, else the workspace root.
prestagebooleanno
curl -X POST "https://api.brixsignage.com/v1/emergency-templates" \
  -H "Authorization: Bearer $BRIX_API_KEY" \
  -H "Content-Type: application/json"

Response 201 Success.

FieldTypeDescription
dataEmergencyTemplateA pre-armed emergency recipe.
data.idstringEmergency template id.
data.spaceIdstring
data.namestring
data.severity"info" | "warning" | "critical"
data.headlinestring
data.bodystring | null
data.contentKind"media" | "creative" | "playlist" | "app" | null
data.contentIdstring | null
data.scopeKind"all" | "node" | "screens"
data.scopeNodeIdstring | null
data.nodeIdstring | nullHome location (null = workspace root); permissions are checked here.
data.prestagebooleanContent is cached on every in-scope screen before any trigger.
data.createdAtstringISO-8601 timestamp (UTC).
data.updatedAtstringISO-8601 timestamp (UTC).
data.deletedAtstring | null

Response 401 Missing, expired or revoked bearer token.

FieldTypeDescription
errorstringMachine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, …
messagestringHuman-readable explanation. Safe to show an operator.
requestIdstringPresent on 5xx: quote it to support.

Response 403 Missing `emergency-override.edit` at the home or scope location.

FieldTypeDescription
errorstringMachine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, …
messagestringHuman-readable explanation. Safe to show an operator.
requestIdstringPresent on 5xx: quote it to support.

Response 404 The content or a location does not exist in this workspace.

FieldTypeDescription
errorstringMachine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, …
messagestringHuman-readable explanation. Safe to show an operator.
requestIdstringPresent on 5xx: quote it to support.

Response 422 A content kind outside media/creative/playlist/app, a half content pointer, or `scopeKind: node` without `scopeNodeId`.

FieldTypeDescription
errorstringMachine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, …
messagestringHuman-readable explanation. Safe to show an operator.
requestIdstringPresent on 5xx: quote it to support.

Response 5XX Server error. The body carries a `requestId` to quote to support.

FieldTypeDescription
errorstringMachine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, …
messagestringHuman-readable explanation. Safe to show an operator.
requestIdstringPresent on 5xx: quote it to support.

PATCH/v1/emergency-templates/{id}

Bearer token emergency-override.edit

Edit an emergency template's content, scope, severity, or prestaging setting.

ParameterInTypeRequiredDescription
idpathstringyesIdentifier for id.
curl -X PATCH "https://api.brixsignage.com/v1/emergency-templates/{id}" \
  -H "Authorization: Bearer $BRIX_API_KEY"

Response 4XX Client error. 404 rather than 403 for another tenant's resource, so account existence is not leaked.

FieldTypeDescription
errorstringMachine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, …
messagestringHuman-readable explanation. Safe to show an operator.
requestIdstringPresent on 5xx: quote it to support.

Response 5XX Server error. The body carries a `requestId` to quote to support.

FieldTypeDescription
errorstringMachine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, …
messagestringHuman-readable explanation. Safe to show an operator.
requestIdstringPresent on 5xx: quote it to support.

DELETE/v1/emergency-templates/{id}

Bearer token emergency-override.edit

Delete an emergency template. Emergencies already triggered from it are unaffected.

ParameterInTypeRequiredDescription
idpathstringyesIdentifier for id.
curl -X DELETE "https://api.brixsignage.com/v1/emergency-templates/{id}" \
  -H "Authorization: Bearer $BRIX_API_KEY"

Response 4XX Client error. 404 rather than 403 for another tenant's resource, so account existence is not leaked.

FieldTypeDescription
errorstringMachine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, …
messagestringHuman-readable explanation. Safe to show an operator.
requestIdstringPresent on 5xx: quote it to support.

Response 5XX Server error. The body carries a `requestId` to quote to support.

FieldTypeDescription
errorstringMachine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, …
messagestringHuman-readable explanation. Safe to show an operator.
requestIdstringPresent on 5xx: quote it to support.