React to Function invocations
A Function invocation runs on its own schedule, so the alternative is pollingGET /v1/functions/invocations/{id} until it leaves RUNNING. Subscribing instead means Browserbase calls you once the invocation reaches a terminal state, and the receiver below handles both the success and the failure case.
1
Expose an endpoint
Browserbase delivers over the public internet, so a receiver on
localhost needs a tunnel while you develop. Use the https:// forwarding URL it prints.2
Register the endpoint
- Node.js
- Python
- cURL
Node.js
BROWSERBASE_WEBHOOK_SECRET.3
Receive and verify
A complete server. It verifies the signature, acknowledges inside the 15 second budget, then does the work.
- Node.js
- Python
Node.js
4
Trigger an invocation
Invoke a Function and let it finish. Your receiver logs the event once the invocation reaches a terminal state.
If nothing arrives
Work down this list, ordered by how often each one is the cause.- Your endpoint returned a non-2xx. Check the response code on the delivery in Settings. A redirect counts as a failure.
- Verification rejected it. Almost always a parsed body. Confirm the raw bytes reach
verify. - You did not subscribe to that type. An endpoint receives only the types it subscribes to.
- Browserbase disabled the endpoint. An endpoint that fails continuously for five days stops receiving deliveries.

Next steps
Verifying deliveries
Signature checking, retries, and idempotency in more detail.
Registering endpoints
Create, list, update, rotate, and delete endpoints.
Functions
The invocations these events report on.
Webhooks API reference
Full request and response shapes.