How delivery works
- An event occurs in your FirstPromoter account.
- FirstPromoter sends a
POSTrequest to each webhook URL configured on the matching campaign. - Your endpoint must respond within the request timeout with an HTTP status code.
- A
2xxresponse acknowledges the delivery. Any other response is treated as a failure.
Setting up webhook URLs
In v1, webhook URLs are configured per campaign. Navigate to Settings → Campaigns → [your campaign] → Webhooks and add a URL for each event you want to receive. Up to 3 webhook URLs can be configured per campaign:- Default webhook URL — receives all standard events (
lead_signup,lead_becomes_referral,new_customer,lead_cancelled,promoter_signed_up,promoter_accepted,reward_created). - Fulfilment webhook URL — receives
fulfilment_pendingevents only.
Retry behaviour
If your endpoint does not respond with a success status, FirstPromoter will retry the delivery. Retry behaviour varies by event type:
For events other than
fulfilment_pending, if your endpoint is unavailable at the time of delivery the event will not be re-sent. Make sure your endpoint is reliably available or use the fulfilment_pending response protocol to keep rewards in a pending state until you are ready.
The fulfilment_pending response protocol
Thefulfilment_pending event has special response semantics. The HTTP status code your endpoint returns controls what happens to the reward in FirstPromoter: