POST to your URL when something happens in a business, so your tools don’t need to poll.
Events
data has the same shape as the matching API resource. For example, GET /appointments returns the objects an appointment.booked event carries, so a list endpoint doubles as sample data.
Add an endpoint
You can add endpoints in the dashboard or with the API.- Dashboard
- API
1
Open Webhooks
Go to Integrations and click Manage on the Webhooks card. Only owners and admins can manage webhooks.
2
Add the endpoint
Click Add endpoint, enter the URL, and pick the events.
3
Copy the signing secret
LobbyStack shows the
whsec_ secret once. Store it where your endpoint can read it.4
Send a test event
Click Send test event, then open Delivery log to see the response your endpoint returned.
Payload
data reflects the resource at the moment the event happened. Fetch the resource again if you need its current state.
Verify signatures
LobbyStack signs each request with the Standard Webhooks scheme and sends three headers:
The signature covers
{webhook-id}.{webhook-timestamp}.{raw body}, keyed with the base64-decoded part of the secret after whsec_. Use a Standard Webhooks library to check it against the raw request body, before you parse the JSON:
Respond and retry
Return any2xx status within 10 seconds. LobbyStack treats anything else as a failure, including timeouts, redirects and connection errors. It doesn’t follow redirects.
After a failure, LobbyStack retries after 30 seconds, 2 minutes, 10 minutes, 30 minutes, 1 hour, 3 hours, 6 hours and 12 hours, for 9 attempts over about 23 hours. Each attempt uses the same webhook-id, so deduplicate on it. Events can arrive out of order; compare created_at or fetch the resource if order matters.
If an event fails every attempt and nothing reached the endpoint in that time, LobbyStack turns the endpoint off and alerts your team, following each person’s Settings > Notifications choices. Fix the endpoint, turn it back on in the dashboard or with PATCH /webhooks/{webhook_id} and {"status": "enabled"}, then use Resend in the delivery log to send missed events.
Delivery log
The delivery log shows each event sent to an endpoint, its status, the last response code, the number of attempts, and when the next retry runs. Resend sends an event again. LobbyStack keeps 30 days of webhook history.Rotate the secret
Click Rotate secret on the endpoint. The old secret stops working right away. Update your endpoint with the new secret soon after: events that fail verification in between get retried and arrive once your endpoint uses the new secret.Network rules
Endpoints must usehttps:// and resolve to a public address. LobbyStack refuses URLs that point to private, loopback, link-local or cloud metadata addresses, both when you save the endpoint and on every delivery. Self-hosted deployments follow the same rule.