POST request. They are useful when you do not want to poll GET /v1/content/{generation_id} after each generation request, and they can also notify you about credit alerts.
What you see in the dashboard
The Webhook workspace has two levels:- Webhook - the list page with Add endpoint, search, and the endpoint table.
- Webhook details - the detail page for one endpoint, including status, events, secret tools, queued events, and the
Webhook eventstable.
Event types
The create dialog lets you subscribe an endpoint to these delivery events:| Event | When BabySea sends it |
|---|---|
generation.started | The generation has been submitted and is processing. |
generation.completed | The generation finished successfully. |
generation.failed | The generation finished with a failure state. |
generation.canceled | The generation was canceled. |
credits.low_balance | The account balance crosses one or more configured alert thresholds. |
webhook.test when you click Send test event on Webhook details.
How delivery works
When a subscribed generation event occurs, BabySea uses this delivery flow:Build the payload
BabySea creates a JSON payload with
webhook_event, webhook_timestamp, webhook_delivery_id, and webhook_data.Sign the payload
BabySea signs the raw JSON with HMAC-SHA256 and sends the signature in
X-BabySea-Signature.Request headers
Every delivery includes these HTTP headers:| Header | Description |
|---|---|
Content-Type | Always application/json |
X-BabySea-Signature | HMAC-SHA256 signature for verification. See Verify signature |
X-BabySea-Event | Event type, for example generation.completed |
X-BabySea-Delivery-Id | Delivery ID that also appears in the payload |
X-BabySea-Timestamp | Timestamp value that also appears in the payload |
Reliability behavior
BabySea records delivery results in the dashboard and can temporarily pause or delay delivery to endpoints that are repeatedly failing. If a webhook becomes unavailable, re-enable it promptly and review the delivery log before resuming production traffic.Disabled endpoints and queued events
If a webhook is unavailable, BabySea may keep eligible generation events available for later delivery from the dashboard. On Webhook details, queued items appear in a banner above the events table with the action Deliver queued events. Queued delivery availability is limited. Re-enable and drain queued events promptly when they appear.Secret handling
Each endpoint has a webhook secret used for signature verification.- The secret is shown once when you create the endpoint.
- The detail page shows only the secret prefix.
- Rotate secret creates a new secret and invalidates the old one immediately.
Access and management
Members can view webhook pages, but create, toggle, rotate, replay, drain, and delete actions are restricted to owner-level users.Next steps
- Setup - Step by step guide to creating a webhook endpoint
- Events - All event types and their payload structures
- Verify signature - How to verify that a delivery came from BabySea
- Retry & delivery - Automatic retries, test events, replay, and queued delivery behavior