How to Get Webhook Access
To get webhook access:- Go to the Webhook Access page and make sure the workspace you want to receive events for is selected.
- Enter your webhook endpoint URL in the provided input field.
- Save the endpoint. A newly created webhook is always subscribed to all available events and starts out inactive, whatever you picked in the form. To narrow the subscription to specific events, edit the webhook after it has been created.
- Click the “Activate” button to enable webhook delivery for that workspace.
Available Webhook Events
Feedspace currently supports the following webhook events:feed.text.received: Triggered when a new text review is receivedfeed.video.received: Triggered when a new video review is receivedfeed.audio.received: Triggered when a new audio review is received
Webhook Delivery
Feedspace will send webhook notifications as HTTP POST requests to your specified webhook URL. Each notification follows this format:type: The event type, one offeed.text.received,feed.video.receivedorfeed.audio.received.data: The review itself. Its contents differ per event type, so it is shown empty above.reviewer_email: A copy of the email address the reviewer submitted, surfaced at the top level for convenience. It isnullwhen the form did not collect an email.
data object, see feed.text.received, feed.video.received or feed.audio.received.
Delivery Behaviour
Each event is delivered as a single HTTP POST request. Feedspace never retries: a non-2xx status, a timeout, or a connection error will not cause the event to be sent again. The response status and body are recorded in the webhook logs. If you need at-least-once processing, queue the payload as soon as you receive it and handle failures on your side. The request times out after 20 seconds, so acknowledge quickly and do your processing asynchronously.Verify Webhook Signature
To ensure the integrity and authenticity of incoming webhook requests, Feedspace signs each payload with a unique secret. We strongly recommend verifying this signature for all production webhooks.How It Works
-
The Signature Headers: Feedspace sends two headers with each webhook request:
x-feedspace-signature: The HMAC-SHA256 signature of the payload.x-feedspace-timestamp: The Unix timestamp (in seconds) when the webhook was sent
-
Your Signing Secret: Each webhook in your workspace has a unique signing secret. You can find this secret in your Feedspace dashboard under Automation > Webhook. Production secrets are prefixed with
whsec_live_and non-production secrets withwhsec_test_. -
Verification Process: You reconstruct the signature on your server using the timestamp, the raw request body, and your secret. If it matches the
x-feedspace-signatureheader, the webhook is legitimate.
Sample Verification Code
Best Practices
- Implement proper error handling for incoming webhook requests
- Consider implementing request validation to verify the authenticity of webhook requests
- Handle different event types appropriately in your application
- Keep your webhook endpoint URL secure and accessible