TAŇBA-OOH Developers

Screen went offline

Webhook device.offline

Sent to the operator when the player of a structure has not reported for longer than the allowed time.

Headers we send

NameInTypeRequiredDescriptionExample
X-Tanba-Deliveryheaderstring (uuid)yesIdentifier of the delivery. It is the same on every retry; use it to ignore duplicates.9b2e4c60-1f7a-4d83-a5c6-3e8d0b7f2a11
X-Tanba-EventheaderstringyesThe event name.approval.issued
X-Tanba-Signatureheaderstringyest=<unix seconds>,v1=<hex HMAC-SHA256 of t + "." + the raw body, keyed with the webhook secret>. See the guide on webhook signatures.t=1790000000,v1=5f2d9c1a0b7e4d63a8c15e90f4b2d7a3c6e81f0594ab2d3c7e6f1a08b9d4c5e2

Body we send

application/json

NameTypeRequiredDescriptionExample
eventconstyesThe event name, the same as in the X-Tanba-Event header."device.offline"
occurred_atstring (date-time)yesWhen the platform noticed the silence."2026-10-06T03:15:00+05:00"
dataobjectyesThe player that went silent.
data.device_idstring (uuid)yesIdentifier of the player."c0a8e1f2-7d54-4e0b-8a31-5b2f6d7c9e10"
data.structurestringyesCode of the structure the player is assigned to."ALM-0012"
data.last_seen_atstring | nullyesWhen the player last reported; null if it never did."2026-10-06T01:02:03+05:00"

Example

{
  "event": "device.offline",
  "occurred_at": "2026-10-06T03:15:00+05:00",
  "data": {
    "device_id": "c0a8e1f2-7d54-4e0b-8a31-5b2f6d7c9e10",
    "structure": "ALM-0012",
    "last_seen_at": "2026-10-06T01:02:03+05:00"
  }
}

Responses

200 The delivery is accepted. Any 2xx status counts; the body is ignored.

No body.

410 Any other status, or no answer within 10 seconds, counts as a failure and the delivery is retried.

No body.