Notifications

The notification centre (bell) and browser push: list and mark notifications read; register a browser for Web Push.

MethodPathSummary
GET/v1/user/notificationsList your notifications
POST/v1/user/notifications/readMark notifications read
GET/v1/user/push/keyGet the Web Push public key
POST/v1/user/push/subscribeRegister a browser for push notifications
POST/v1/user/push/unsubscribeStop push notifications to a browser

#List your notifications

GET/v1/user/notifications
Address
https://<your-org>.brambleit.cloud/api/v1/user/notifications
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).

Query parameters

NameTypeDescription
limitinteger

Response 200

FieldTypeDescription
notificationsarray of object
notifications[].idinteger
notifications[].appstring
notifications[].kindstring
notifications[].titlestring
notifications[].bodystring, or null
notifications[].urlstring, or null
notifications[].created_atstring (date-time)
notifications[].read_atstring (date-time), or null
unreadnumber
Example response
JSON
{
  "notifications": [
    {
      "id": 42,
      "app": "string",
      "kind": "string",
      "title": "Example title",
      "body": "<p>…</p>",
      "url": "https://example.com/…",
      "created_at": "2026-11-12T09:30:00.000Z",
      "read_at": "2026-11-12T09:30:00.000Z"
    }
  ],
  "unread": 12.5
}

Example request

Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v1/user/notifications' \
  -H "X-API-Key: $BRAMBLE_KEY"

#Mark notifications read

POST/v1/user/notifications/read
Address
https://<your-org>.brambleit.cloud/api/v1/user/notifications/read
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).

Request body JSON

NameTypeDescription
idsarray of anyNotification ids to mark read.
allanytrue marks every notification read.

Response 200

FieldTypeDescription
okboolean
Example response
JSON
{
  "ok": true
}

Example request

Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v1/user/notifications/read' \
  -H "X-API-Key: $BRAMBLE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"ids":[],"all":"…"}'

#Get the Web Push public key

GET/v1/user/push/key
Address
https://<your-org>.brambleit.cloud/api/v1/user/push/key
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).

Response 200

FieldTypeDescription
publicKeystring
Example response
JSON
{
  "publicKey": "…"
}

Example request

Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v1/user/push/key' \
  -H "X-API-Key: $BRAMBLE_KEY"

#Register a browser for push notifications

POST/v1/user/push/subscribe
Address
https://<your-org>.brambleit.cloud/api/v1/user/push/subscribe
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).

Request body JSON

NameTypeDescription
subscriptionanyThe browser's PushSubscription (as JSON).
scopeany

Response 200

FieldTypeDescription
okboolean
Example response
JSON
{
  "ok": true
}

Example request

Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v1/user/push/subscribe' \
  -H "X-API-Key: $BRAMBLE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"subscription":"…","scope":"…"}'

#Stop push notifications to a browser

POST/v1/user/push/unsubscribe
Address
https://<your-org>.brambleit.cloud/api/v1/user/push/unsubscribe
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).

Request body JSON

NameTypeDescription
endpointanyThe subscription's endpoint URL.

Response 200

FieldTypeDescription
okboolean
Example response
JSON
{
  "ok": true
}

Example request

Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v1/user/push/unsubscribe' \
  -H "X-API-Key: $BRAMBLE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"endpoint":"…"}'