Create a subscription
secret once. Store it next to your token.
Events
What a delivery looks like
Headers:
Body:
Verify the signature
The signature issha256= followed by the hex HMAC-SHA256 of the raw request
body, keyed with the subscription secret.
Responding
Return200 within a few seconds and do the real work asynchronously. Any
other status counts as a failure and is retried. After 10 consecutive
failures the subscription is switched off; re-enable it with a PATCH once
your endpoint is healthy.
Use X-HueChat-Delivery to drop duplicates, and reject deliveries whose
X-HueChat-Timestamp is more than a few minutes old.
Test, inspect, rotate
Account webhooks (v1)
/core/accounts/{account_id}/webhooks is the older subscription list used
by the dashboard’s Settings → Integrations page. It posts a flat event
object with underscore event names such as message_created and carries
no signature header. It still works; for anything new, use the signed
subscriptions above.
