Register a signed webhook for watch notifications

Free. Registers an https URL as your notification channel (it replaces a connected Slack, Discord or webhook channel — one per account). Every delivery is a JSON POST signed with HMAC-SHA256: the header X-Delta-Signature: t=<unix seconds>,v1=<hex> carries HMAC-SHA256(signing_secret, "<t>.<raw body>"), X-Delta-Delivery-Id is unique per POST, and X-Delta-Event is watch.notification (or test for the confirmation sent by POST /api/v1/notification-channel/test, whose body is {"type": "test", "message", "settings_url", "sent_at"}). Verify the signature over the raw body and reject an old t to stop replays of a captured request. The body is {"type": "watch.notification", "replay": false, "watch": {...}, "event": {...} | null, "changes": [{"id", "kind", "created_at", "line", "label", "from", "to", "locked", "opens_on", ...}]} — values the plan withholds are null with locked: true, as in the app. The URL must be https on port 443 and resolve to a public address; redirects are not followed. The signing secret is returned ONLY in this response; register again to get a new one. Deliveries run with the hourly watch notifications; a 404 or 410 stops the channel, and other failures are retried each hour until 24 in a row stop it. Which watches deliver here is notify_chat on each watch.

post/api/v1/notification-channel/webhook

Request

  • Base URL: https://offnadir-delta.com
  • URL: https://offnadir-delta.com/api/v1/notification-channel/webhook
  • Auth: one of:
    • HTTP bearer
    • API key in header X-API-Key

Request body

urlstring required

The https URL to POST notifications to (port 443, public host).

Response

The registered channel and its signing secret (shown once).

channelobject
signing_secretstring

Changes

No recorded changes to this operation across all 1 revision of this API.