CLI

tigby webhook

Register where an Identity's Events are delivered

A Webhook is an HTTPS endpoint plus the Event types it takes. Deliveries are signed with the Identity's signing secret – HMAC-SHA256 over '{request_id}.{timestamp}.{body}', carried in X-Tigby-Request-Id, X-Tigby-Timestamp and X-Tigby-Signature. A failed delivery is retried after 30s, 5m, 30m, 2h, 6h and 24h before it is marked failed.

tigby webhook create

Register a Webhook.

The first Webhook of an Identity mints its signing secret, and this answer is the only place that secret is ever shown. Write it down before the terminal scrolls.

tigby webhook create <handle> <url> [options]
ArgumentWhat it is
<handle>The Identity whose Events these are, with or without a leading @.
<url>The HTTPS endpoint to deliver to.
OptionWhat it does
--event <types>The Event types to subscribe, comma-separated: email.received, email.recipient_blocked, card.updated, tunnel.* , connector.* , export.* and the account ones. Leave it off and the API says which names it knows.
tigby webhook create @orderbot https://example.com/hooks/tigby --event email.received
tigby webhook create @orderbot https://example.com/hooks/tigby --event connector.mention,connector.dm

tigby webhook list

List an Identity's Webhooks.

Oldest first. The signing secret is not in the list; it never is, after the answer that minted it.

tigby webhook list <handle> [options]
ArgumentWhat it is
<handle>The Identity whose Events these are, with or without a leading @.

tigby webhook delete

Remove a Webhook.

Removes the Webhook and its delivery log. The Identity's signing secret stays, for its other Webhooks.

tigby webhook delete <handle> <id> [options]
ArgumentWhat it is
<handle>The Identity whose Events these are, with or without a leading @.
<id>The Webhook's id, as tigby webhook list shows it.

This command cannot be undone, so it asks before it acts. --yes answers in advance; --json implies it.

tigby webhook rotate

Replace the Identity's signing secret.

Every delivery to this Identity's Webhooks is signed with the new secret from the next attempt on, so a receiver still checking against the old one starts rejecting. The answer is the only place the new secret is shown.

tigby webhook rotate <handle> [options]
ArgumentWhat it is
<handle>The Identity whose Events these are, with or without a leading @.

This command cannot be undone, so it asks before it acts. --yes answers in advance; --json implies it.

tigby webhook rotate @orderbot

tigby webhook deliveries

The delivery log of one Webhook.

What was sent, what answered and when the next attempt is due. Where to look when an Event was raised and nothing arrived at the other end – and where a replayed Event lands.

tigby webhook deliveries <handle> <id> [options]
ArgumentWhat it is
<handle>The Identity whose Events these are, with or without a leading @.
<id>The Webhook's id, as tigby webhook list shows it.
OptionWhat it does
--attemptsPrint every attempt of every delivery, not just the counts.