AdminRead the alarm push-notification delivery log

Read the alarm push-notification delivery log

One row per recipient per alarm transition, newest first, recording what happened to that notification: sent, failed (with the error), skipped_unconfigured (no PUSH_NOTIFICATION_URL/_API_KEY in this environment), or suppressed (the transition has no copy — motion clearing — or nobody has access to the device; the reason is in error). Each row also carries the matter path, endpoint, device type and where that device type came from, so a mislabelled sensor is distinguishable from a genuine delivery miss. Filter by device, user, time range, alarm type and outcome. Requires dual auth: X-Admin-API-Key + JWT.

curl -X GET "https://api.spkey.co/admin/notification-log?deviceId=example_string&userId=example_string&from=example_string&to=example_string&alarmType=example_string&outcome=sent&limit=42&offset=null" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN (JWT)" \
  -H "X-API-Key: YOUR_API_KEY"
{
  "total": 3.14,
  "limit": 3.14,
  "offset": 3.14,
  "hasMore": true,
  "records": [
    {
      "eventId": "example_string",
      "userId": "example_string",
      "deviceId": "example_string",
      "alarmType": "null",
      "severity": "null",
      "channel": "null",
      "matterPath": "null",
      "endpoint": "null",
      "deviceTypeId": "null",
      "deviceTypeSource": "null",
      "rawValue": "null",
      "title": "null",
      "body": "null",
      "outcome": "sent",
      "error": "null",
      "createdAt": "example_string"
    }
  ]
}
GET
/admin/notification-log
GET
Base URLstring

Target server for requests. Edit to use your own host.

Bearer Token (JWT)
Bearer Tokenstring
Required

JWT token from SmartphoneKey authentication. Identifies the B2C user or B2B service.

JWT token from SmartphoneKey authentication. Identifies the B2C user or B2B service.
API Key (header: X-API-Key)
X-API-Keystring
Required

API key for B2B organization access. Provided during organization onboarding.

API key for B2B organization access. Provided during organization onboarding.
query
deviceIdstring

MatterDevice UUID whose sensor tripped.

query
userIdstring

Recipient UUID. Device-level records (nothing sent to anybody) carry "".

query
fromstring

Inclusive ISO-8601 lower bound on the delivery timestamp.

query
tostring

Inclusive ISO-8601 upper bound on the delivery timestamp.

query
alarmTypestring

contact | motion | water_leak | water_freeze | rain | smoke | co | device_fault

query
outcomestring

Filter to one delivery outcome — failed and suppressed are the interesting ones.

Options: sent, failed, skipped_unconfigured, suppressed, undeliverable, muted
query
limitinteger

Page size, newest first (default 50, max 200).

Min: 1 • Max: 200
query
offsetintegernull

Rows to skip (default 0).

Min: 0
Request Preview
Response

Response will appear here after sending the request

Authentication

header
Authorizationstring
Required

Bearer token (JWT). JWT token from SmartphoneKey authentication. Identifies the B2C user or B2B service.

header
X-API-Keystring
Required

API Key for authentication. API key for B2B organization access. Provided during organization onboarding.

Query Parameters

deviceIdstring

MatterDevice UUID whose sensor tripped.

userIdstring

Recipient UUID. Device-level records (nothing sent to anybody) carry "".

fromstring

Inclusive ISO-8601 lower bound on the delivery timestamp.

tostring

Inclusive ISO-8601 upper bound on the delivery timestamp.

alarmTypestring

contact | motion | water_leak | water_freeze | rain | smoke | co | device_fault

outcomestring

Filter to one delivery outcome — failed and suppressed are the interesting ones.

Allowed values:sentfailedskipped_unconfiguredsuppressedundeliverablemuted
limitinteger

Page size, newest first (default 50, max 200).

offsetinteger,null

Rows to skip (default 0).

Responses

totalnumber
Required
limitnumber
Required
offsetnumber
Required
hasMoreboolean
Required
recordsarray
Required