Skip to main content
Webhooks send workspace events to your integration’s HTTP endpoint. You need webhooks:manage to manage subscriptions and inspect delivery history.

Create a subscription

Use Create a webhook subscription to select your destination and event types. Store the webhook secret securely. Use Send a test delivery to verify your handler, then inspect recent deliveries.

Verify each request

Protodesk sends these headers: The signed message is the timestamp, a period, and the raw request body. Verify it before parsing or processing the payload. Re-serializing JSON changes the bytes and can invalidate the signature.
Pass a raw Buffer and lowercase header names to this example. Configure your framework to retain the original body bytes. Never log the signing secret.

Process events once

After verification, record Protodesk-Event-Id with a uniqueness constraint and enqueue your work durably. Return a successful response after accepting the event. Repeated deliveries of an already accepted event should succeed without repeating the business action. Design your handler for retries and out-of-order events. When needed, retrieve the current resource through the API instead of relying on an older event snapshot.

Troubleshoot deliveries

Check delivery history for your endpoint’s response and failure details. Fix authentication, certificate, timeout, or handler errors before retrying. Persistent failures can disable a subscription; inspect its status and re-enable it after correcting the receiver.