← Webhooks integration

Webhooks: setup and support

Self-serve · No sign-in needed · last checked October 3, 2026

Connect Get help

Self-serve. Connect it yourself from the app with the steps below. Stuck at any point? Get help.

Setup steps

  1. Open Phone, then Webhooks, and choose New endpoint.
  2. Paste the URL that should receive events, for example a Zapier or Make catch hook.
  3. Optionally filter events, such as call.* or voicemail.received.
  4. Copy the signing secret. It is shown once.
  5. Verify each request by computing HMAC-SHA256 of "{timestamp}.{body}" with the secret and comparing it to the Timberswitch-Signature header.

What the AI can do

  • Nothing on the call: webhooks report what happened after it.
  • Every finished call, voicemail and inbound text becomes an event your other tools can act on.

What it can't do, and limits

  • Events go out after the fact. A webhook can't change what happens on a live call.
  • Events today: call.completed, voicemail.received, sms.received, contact.created, contact.updated and contact.deleted.
  • Failed deliveries are retried with backoff for 8 attempts, then dropped.

Troubleshooting

My endpoint isn't receiving anything.

Check the endpoint is not paused, the event filter matches the events you expect, and the URL accepts a POST over HTTPS. The Webhooks page shows the last delivery time.

The signature doesn't match.

Sign the raw request body exactly as received, prefixed with the timestamp and a full stop. Re-serializing the JSON first changes the bytes and breaks the signature.

I lost the signing secret.

Secrets are shown once. Delete the endpoint and create a new one to get a new secret.

Disconnecting, and the data we keep

An owner or admin can pause or delete an endpoint at any time from Phone, then Webhooks, in the app.

  • The endpoint URL, label, event filter and signing secret, in your workspace's encrypted database.
  • A delivery log with status codes, kept for troubleshooting.
  • Deleting an endpoint stops deliveries straight away.

Still stuck?

Get help: it opens an Integration support ticket. Include the time of the call and what you expected to happen.

TimberSwitch is a trademark of its owner; TimberSwitch is not affiliated.