Studio sends HTTP POST requests to your endpoint when stream or asset events occur. Your server responds with
200 to acknowledge. Any other response is treated as a failure and Studio retries.
Available events
Step 1 — Create a webhook
Step 2 — Handle incoming events
Set up an HTTP endpoint that accepts POST requests. Express.js example:Step 3 — Verify webhook signatures
Studio signs every request with HMAC-SHA256. Verifying the signature rejects spoofed or tampered requests. TheLivepeer-Signature header format:
Testing locally
Use ngrok to expose your local server during development:Webhook payload structure
payload object shape varies by event type. Refer to the Studio API Reference for per-event schemas.
Related pages
Access Control
Use
playback.accessControl webhooks to gate content dynamically.Create a Livestream
Create streams and attach webhook event subscriptions.