Interactions API
Interactions endpoints in the Brix REST API for digital signage: 2 operations (GET). Each lists its path, auth, required permission and a curl example.
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/interactions
List engagement events from your screens, such as on-screen taps, QR code scans, presenter joins, and form submissions. **Notes.** - Newest first, at most 1000, from screens at locations the caller can see.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
from | query | string | no | ISO-8601 start (default: 7 days ago). |
to | query | string | no | ISO-8601 end (default: now). |
screenId | query | string | no |
curl "https://api.brixsignage.com/v1/interactions" \
-H "Authorization: Bearer $BRIX_API_KEY" Response 200 Success.
| Field | Type | Description |
|---|---|---|
data | array of object | |
data[].id | string | |
data[].screenId | string | |
data[].screenName | string | The screen id when the screen no longer exists. |
data[].at | string | ISO-8601 timestamp (UTC). |
data[].kind | "touch" | "qr-scan" | "screenshare-join" | "form-submit" | |
data[].detail | string | A short human-readable summary. |
data[].boxId | string | null | A counted button tap only: the box that was tapped. |
data[].creativeId | string | null | A counted button tap only: the design the box is on. |
data[].action | string | null | A counted button tap only: the tap action kind (for example `open-url`). |
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. |
GET/v1/interactions/taps
Returns the number of taps on each button of a design in a date range, with the design and box names. Only tap actions saved with count: true are counted. The busiest buttons come first, and at most 20,000 taps are read, from screens at the locations you can see.
Counted taps per button (a box on a design) in the window. Only tap actions saved with count: true are counted.
**Notes.**
- Most taps first. Reads at most 20,000 taps, from screens at locations the caller can see.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
from | query | string | no | ISO-8601 start (default: 7 days ago). |
to | query | string | no | ISO-8601 end (default: now). |
screenId | query | string | no |
curl "https://api.brixsignage.com/v1/interactions/taps" \
-H "Authorization: Bearer $BRIX_API_KEY" Response 200 Success.
| Field | Type | Description |
|---|---|---|
data | array of object | |
data[].creativeId | string | null | |
data[].creativeName | string | null | Null when the design is gone. |
data[].boxId | string | |
data[].boxName | string | null | The layer name, else its text. Null when the box is gone. |
data[].action | string | null | The tap action kind of the newest tap. |
data[].count | integer | |
data[].lastAt | string | ISO-8601 timestamp (UTC). |
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. |