Webhook Events

Scheduled sync finished

One of your workspace's scheduled syncs finished: every account and video it refreshed is live in the dashboard and the API, or failed. One event per sync slot that had something to refresh, also when some or all of its items failed (status). A slot that has not finished 2 hours after its last progress, or 6 hours after its syncs were sent (normally seconds after scheduledFor), is reported as it stands (timedOut, unfinished). Syncs you start yourself are reported by sync.completed. Opt-in: endpoints subscribed to all events (*) do not receive it; subscribe to it by name.

postWebhookorganization.synced

Headers

webhook-idstring required
Example:whevt_A1b2C3d4E5f6

The event id; the same on every retry of this event. Dedupe on it.

webhook-timestampstring required
Example:1790332496

Unix seconds of this delivery attempt (re-signed on every retry). Reject values more than 5 minutes off.

webhook-signaturestring required
Example:v1,K5oZfzN95Z9UVu1EsfQmfVNQhnkZ2pj9o9NDN/H/pI4=

Space-separated v1,<base64 HMAC-SHA256 of "<webhook-id>.<webhook-timestamp>.<body>"> signatures, one per active signing secret (two during a rotation). Verify with any Standard Webhooks library.

Payload

idstring required

Event id; the webhook-id header. The same on every retry: dedupe on it.

type'organization.synced' required
timestampstring date-time required

When the change happened

organizationIdstring required

Response

Any 2xx within 15 seconds acknowledges the event. Anything else, a timeout or a redirect is retried (10 attempts over about 3 days); 410 disables the endpoint.

Changes

Webhooks have no change history: a webhook is keyed by its event name rather than a path and method, so no recorded change can name it.