Power policies API
Power policies endpoints in the Brix REST API: 5 operations (GET, POST, PATCH), with auth, permissions and curl examples.
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/power-policiesPOST /v1/power-policiesGET /v1/power-policies/{id}PATCH /v1/power-policies/{id}POST /v1/power-policies/{id}/delete
GET/v1/power-policies
List the power policies configured for your workspace. Each policy defines an open and close window for the screens using it. **Notes.** - Needs the permission at the workspace root: a location-scoped key is refused.
curl "https://api.brixsignage.com/v1/power-policies" \
-H "Authorization: Bearer $BRIX_API_KEY" Response 200 Success.
| Field | Type | Description |
|---|---|---|
data | array of PowerPolicy | |
data[].id | string | Power policy id. |
data[].spaceId | string | |
data[].name | string | |
data[].description | string | null | |
data[].windows | WeeklyWindows | Open window per weekday (`mon` … `sun`). A day that is absent is closed. |
data[].windows.mon | OpenWindow | |
data[].windows.mon.start | string | Opening time, `HH:MM` 24-hour, local time. |
data[].windows.mon.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data[].windows.mon.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data[].windows.mon.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data[].windows.mon.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data[].windows.tue | OpenWindow | |
data[].windows.tue.start | string | Opening time, `HH:MM` 24-hour, local time. |
data[].windows.tue.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data[].windows.tue.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data[].windows.tue.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data[].windows.tue.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data[].windows.wed | OpenWindow | |
data[].windows.wed.start | string | Opening time, `HH:MM` 24-hour, local time. |
data[].windows.wed.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data[].windows.wed.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data[].windows.wed.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data[].windows.wed.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data[].windows.thu | OpenWindow | |
data[].windows.thu.start | string | Opening time, `HH:MM` 24-hour, local time. |
data[].windows.thu.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data[].windows.thu.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data[].windows.thu.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data[].windows.thu.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data[].windows.fri | OpenWindow | |
data[].windows.fri.start | string | Opening time, `HH:MM` 24-hour, local time. |
data[].windows.fri.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data[].windows.fri.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data[].windows.fri.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data[].windows.fri.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data[].windows.sat | OpenWindow | |
data[].windows.sat.start | string | Opening time, `HH:MM` 24-hour, local time. |
data[].windows.sat.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data[].windows.sat.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data[].windows.sat.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data[].windows.sat.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data[].windows.sun | OpenWindow | |
data[].windows.sun.start | string | Opening time, `HH:MM` 24-hour, local time. |
data[].windows.sun.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data[].windows.sun.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data[].windows.sun.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data[].windows.sun.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data[].rebootHourLocal | integer | null | Hour (0–23, local time) the device restarts each day; null = no scheduled restart. |
data[].timezone | string | null | IANA time zone the windows use; null = each screen's own time zone. |
data[].createdAt | string | ISO-8601 timestamp (UTC). |
data[].updatedAt | string | ISO-8601 timestamp (UTC). |
data[].deletedAt | string | null | Always null on these reads. |
data[].screenCount | integer | Screens that use this policy. |
{
"data": [
{
"id": "ppol_1a2b3c4d5e6f7a8b",
"spaceId": "space_1a2b3c4d5e6f7a8b",
"name": "Store hours",
"description": "Open 8 to 22",
"windows": {
"mon": {
"start": "08:00",
"end": "22:00"
},
"tue": {
"start": "08:00",
"end": "22:00",
"volume": 40
}
},
"rebootHourLocal": 4,
"timezone": "Europe/London",
"createdAt": "2026-09-28T09:00:00.000Z",
"updatedAt": "2026-09-28T09:00:00.000Z",
"deletedAt": null,
"screenCount": 12
}
]
} Response 401 Missing, expired or revoked bearer token.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 403 The token lacks the permission this operation needs (see `x-brix-permission`).
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 5XX Server error. The body carries a `requestId` to quote to support.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
POST/v1/power-policies
Create a named power policy that defines when screens using it should power on and off. **Notes.** - Needs the permission at the workspace root: a location-scoped key is refused.
Request body application/json
| Field | Type | Required | Description |
|---|---|---|---|
name | string | no | Default on create: `Untitled policy`. |
description | string | null | no | |
windows | object | no | Open window per weekday. `null` or an absent day is closed. A malformed day is dropped (closed), not refused. |
windows.mon | OpenWindow | null | no | |
windows.tue | OpenWindow | null | no | |
windows.wed | OpenWindow | null | no | |
windows.thu | OpenWindow | null | no | |
windows.fri | OpenWindow | null | no | |
windows.sat | OpenWindow | null | no | |
windows.sun | OpenWindow | null | no | |
rebootHourLocal | number | null | no | 0–23; rounded and clamped. Null (or a value that is not a number) turns the restart off. |
timezone | string | null | no | IANA time zone (`Europe/London`). An unknown zone is refused with 422. |
curl -X POST "https://api.brixsignage.com/v1/power-policies" \
-H "Authorization: Bearer $BRIX_API_KEY" \
-H "Content-Type: application/json" Response 201 Success.
| Field | Type | Description |
|---|---|---|
data | PowerPolicy | |
data.id | string | Power policy id. |
data.spaceId | string | |
data.name | string | |
data.description | string | null | |
data.windows | WeeklyWindows | Open window per weekday (`mon` … `sun`). A day that is absent is closed. |
data.windows.mon | OpenWindow | |
data.windows.mon.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.mon.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.mon.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.mon.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.mon.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.tue | OpenWindow | |
data.windows.tue.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.tue.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.tue.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.tue.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.tue.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.wed | OpenWindow | |
data.windows.wed.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.wed.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.wed.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.wed.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.wed.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.thu | OpenWindow | |
data.windows.thu.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.thu.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.thu.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.thu.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.thu.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.fri | OpenWindow | |
data.windows.fri.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.fri.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.fri.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.fri.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.fri.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.sat | OpenWindow | |
data.windows.sat.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.sat.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.sat.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.sat.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.sat.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.sun | OpenWindow | |
data.windows.sun.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.sun.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.sun.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.sun.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.sun.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.rebootHourLocal | integer | null | Hour (0–23, local time) the device restarts each day; null = no scheduled restart. |
data.timezone | string | null | IANA time zone the windows use; null = each screen's own time zone. |
data.createdAt | string | ISO-8601 timestamp (UTC). |
data.updatedAt | string | ISO-8601 timestamp (UTC). |
data.deletedAt | string | null | Always null on these reads. |
data.screenCount | integer | Screens that use this policy. |
Response 401 Missing, expired or revoked bearer token.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 403 The token lacks the permission this operation needs (see `x-brix-permission`).
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 422 Unknown `timezone`.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 5XX Server error. The body carries a `requestId` to quote to support.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
GET/v1/power-policies/{id}
Get one power policy by its ID. **Notes.** - Needs the permission at the workspace root: a location-scoped key is refused.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes | Power policy id. |
curl "https://api.brixsignage.com/v1/power-policies/{id}" \
-H "Authorization: Bearer $BRIX_API_KEY" Response 200 Success.
| Field | Type | Description |
|---|---|---|
data | PowerPolicy | |
data.id | string | Power policy id. |
data.spaceId | string | |
data.name | string | |
data.description | string | null | |
data.windows | WeeklyWindows | Open window per weekday (`mon` … `sun`). A day that is absent is closed. |
data.windows.mon | OpenWindow | |
data.windows.mon.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.mon.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.mon.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.mon.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.mon.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.tue | OpenWindow | |
data.windows.tue.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.tue.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.tue.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.tue.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.tue.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.wed | OpenWindow | |
data.windows.wed.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.wed.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.wed.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.wed.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.wed.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.thu | OpenWindow | |
data.windows.thu.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.thu.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.thu.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.thu.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.thu.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.fri | OpenWindow | |
data.windows.fri.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.fri.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.fri.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.fri.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.fri.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.sat | OpenWindow | |
data.windows.sat.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.sat.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.sat.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.sat.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.sat.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.sun | OpenWindow | |
data.windows.sun.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.sun.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.sun.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.sun.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.sun.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.rebootHourLocal | integer | null | Hour (0–23, local time) the device restarts each day; null = no scheduled restart. |
data.timezone | string | null | IANA time zone the windows use; null = each screen's own time zone. |
data.createdAt | string | ISO-8601 timestamp (UTC). |
data.updatedAt | string | ISO-8601 timestamp (UTC). |
data.deletedAt | string | null | Always null on these reads. |
data.screenCount | integer | Screens that use this policy. |
Response 401 Missing, expired or revoked bearer token.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 403 The token lacks the permission this operation needs (see `x-brix-permission`).
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 404 No such power policy in this workspace.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 5XX Server error. The body carries a `requestId` to quote to support.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
PATCH/v1/power-policies/{id}
Update a power policy's open and close windows, reboot hour, time zone, or name.
**Notes.**
- screenCount in this response is always 0; read the policy to get the real count.
- An empty name keeps the current name.
- Needs the permission at the workspace root: a location-scoped key is refused.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes | Power policy id. |
Request body application/json
| Field | Type | Required | Description |
|---|---|---|---|
name | string | no | Default on create: `Untitled policy`. |
description | string | null | no | |
windows | object | no | Open window per weekday. `null` or an absent day is closed. A malformed day is dropped (closed), not refused. |
windows.mon | OpenWindow | null | no | |
windows.tue | OpenWindow | null | no | |
windows.wed | OpenWindow | null | no | |
windows.thu | OpenWindow | null | no | |
windows.fri | OpenWindow | null | no | |
windows.sat | OpenWindow | null | no | |
windows.sun | OpenWindow | null | no | |
rebootHourLocal | number | null | no | 0–23; rounded and clamped. Null (or a value that is not a number) turns the restart off. |
timezone | string | null | no | IANA time zone (`Europe/London`). An unknown zone is refused with 422. |
curl -X PATCH "https://api.brixsignage.com/v1/power-policies/{id}" \
-H "Authorization: Bearer $BRIX_API_KEY" \
-H "Content-Type: application/json" Response 200 Success.
| Field | Type | Description |
|---|---|---|
data | PowerPolicy | |
data.id | string | Power policy id. |
data.spaceId | string | |
data.name | string | |
data.description | string | null | |
data.windows | WeeklyWindows | Open window per weekday (`mon` … `sun`). A day that is absent is closed. |
data.windows.mon | OpenWindow | |
data.windows.mon.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.mon.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.mon.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.mon.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.mon.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.tue | OpenWindow | |
data.windows.tue.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.tue.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.tue.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.tue.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.tue.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.wed | OpenWindow | |
data.windows.wed.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.wed.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.wed.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.wed.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.wed.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.thu | OpenWindow | |
data.windows.thu.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.thu.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.thu.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.thu.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.thu.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.fri | OpenWindow | |
data.windows.fri.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.fri.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.fri.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.fri.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.fri.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.sat | OpenWindow | |
data.windows.sat.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.sat.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.sat.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.sat.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.sat.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.windows.sun | OpenWindow | |
data.windows.sun.start | string | Opening time, `HH:MM` 24-hour, local time. |
data.windows.sun.end | string | Closing time, `HH:MM`. An `end` at or before `start` runs past midnight. |
data.windows.sun.volume | integer | null | Volume 0–100 while open; absent or null keeps the screen's own. |
data.windows.sun.brightness | integer | null | Backlight 0–100 while open; absent or null keeps the screen's own. |
data.windows.sun.muted | boolean | null | Mute (true) or unmute (false) while open; absent or null keeps the screen's own. |
data.rebootHourLocal | integer | null | Hour (0–23, local time) the device restarts each day; null = no scheduled restart. |
data.timezone | string | null | IANA time zone the windows use; null = each screen's own time zone. |
data.createdAt | string | ISO-8601 timestamp (UTC). |
data.updatedAt | string | ISO-8601 timestamp (UTC). |
data.deletedAt | string | null | Always null on these reads. |
data.screenCount | integer | Screens that use this policy. |
Response 401 Missing, expired or revoked bearer token.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 403 The token lacks the permission this operation needs (see `x-brix-permission`).
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 404 No such power policy in this workspace.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 422 Unknown `timezone`.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 5XX Server error. The body carries a `requestId` to quote to support.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
POST/v1/power-policies/{id}/delete
Delete a power policy. Screens that use it go back to their own operating hours. A deleted policy cannot be restored.
**Notes.**
- A POST to /delete, not DELETE. Screens that use the policy keep the link and use their own operating hours until they get another policy. There is no restore route.
- Needs the permission at the workspace root: a location-scoped key is refused.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes | Power policy id. |
curl -X POST "https://api.brixsignage.com/v1/power-policies/{id}/delete" \
-H "Authorization: Bearer $BRIX_API_KEY" Response 200 Success.
| Field | Type | Description |
|---|---|---|
data | object | |
data.id | string | |
data.deleted | true |
Response 401 Missing, expired or revoked bearer token.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 403 The token lacks the permission this operation needs (see `x-brix-permission`).
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 404 No such power policy in this workspace.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |
Response 5XX Server error. The body carries a `requestId` to quote to support.
| Field | Type | Description |
|---|---|---|
error | string | Machine-readable code: `unauthorized`, `forbidden`, `not_found`, `validation_error`, `conflict`, `rate_limited`, `internal_error`, … |
message | string | Human-readable explanation. Safe to show an operator. |
requestId | string | Present on 5xx: quote it to support. |