Configuring Webhooks
You can configure endpoints in each workspace for an app to receive webhook event notifications for resources, such as devices and connected accounts. To configure webhook endpoints:- In the left navigation pane of the Seam Console, click Webhooks.
- Click + Add Webhook.
- In the Create Webhook dialog, type your webhook URL and select the event types for which you want to receive events.
- Click Create.
- Copy your webhook secret and store it somewhere secure. You use this webhook secret to validate the payloads that you receive on your webhook.


device.connected or device.low_battery. It’s a good idea when getting started with webhooks to review the list of webhook event types and test your endpoint using the Svix sandbox environment.
.png?fit=max&auto=format&n=H96jOW_ZJ5A7VZhZ&q=85&s=35aaf6acd400cbfad5aa6007b13e0cd6)
.png?fit=max&auto=format&n=H96jOW_ZJ5A7VZhZ&q=85&s=1d7db45b74ae8b54727f436469cb59ad)
Testing Events
Use the webhooks playground in Seam Console to see the payload for each event and test these events against your own endpoints.
Tracking a Device Count from Webhooks
If you maintain your own count of the devices in a Seam workspace—for example, to display a total in your dashboard or to reconcile against your billing—process these four events:
Two related events deliberately do not change the count:
device.removedmeans the device was removed externally from the connected account. Seam keeps the device and flags it, so it still exists in your workspace. If it reappears, Seam clears the flag and emitsdevice.added—which is exactly the case the warning above describes.device.connectedanddevice.disconnectedreport reachability, not existence. An offline device is still a device.
Retry Schedule for Webhooks
Seam delivers each webhook event based on a retry schedule with exponential backoff. Each message is attempted based on the following schedule, where each period is started following the failure of the preceding attempt:- Immediately
- 5 seconds
- 5 minutes
- 30 minutes
- 2 hours
- 5 hours
- 10 hours
- 10 hours (in addition to the previous)