Webhooks let your application receive real-time HTTP notifications when events happen in your Streampixel project — a build being uploaded, approved, rejected, distributed, and so on. Instead of polling for updates, Streampixel pushes event data directly to your endpoint.Documentation Index
Fetch the complete documentation index at: https://docs.streampixel.io/llms.txt
Use this file to discover all available pages before exploring further.
Common use cases
Trigger deployments
Run release jobs as soon as a build is approved.
Send team alerts
Post to Slack or Discord when a build is rejected.
Track pipeline activity
Mirror build events into your monitoring stack.
Automated testing
Kick off smoke tests on every approved build.
Set up a webhook
Choose events
Use the event checkboxes to select which events you want (all are selected by default).
Your endpoint must be reachable from the internet and able to accept HTTP POST requests with a JSON body.
Events
Streampixel emits a webhook at each stage of the build pipeline.| Event | Description |
|---|---|
build.uploaded | A new build file has been uploaded to the project. |
build.downloading | The build file is being downloaded for processing. |
build.extracting | The build file is being extracted and scanned. |
build.saving | The build is being saved to the repository. |
build.distributing | The build is being distributed to streaming servers. |
build.approved | The build has been reviewed and approved. |
build.rejected | The build has been reviewed and rejected. |
build.distributing.
Payload
Every webhook is anHTTP POST request with Content-Type: application/json.
The event type (e.g.,
build.approved). See the events table above.The Streampixel project ID.
The unique identifier of the uploaded build.
The URL of the build file, when available.
Raw pipeline status (e.g.,
Approved, Reject, Distribute).The reason for rejection. Only populated when
event is build.rejected.ISO 8601 timestamp of when the event occurred.
Examples
Testing your endpoint
Click the Test button in Project Settings to send awebhook.test payload to your configured URL.
- Success — The dashboard confirms the test was sent. Your endpoint responded with a
2xxstatus. - Failure — The dashboard shows an error. Verify the URL is correct, publicly accessible, and returns a
2xxresponse.
Filtering events
By default, all seven build events are enabled. Customize which events you receive using the checkboxes in Project Settings:- Only care about final outcomes? Select just
build.approvedandbuild.rejected. - Want full pipeline visibility? Keep all events enabled.
- Monitoring distribution? Select
build.distributingandbuild.approved.
Best practices
Receiving webhooks
- Node.js (Express)
- Python (Flask)
Troubleshooting
| Problem | Solution |
|---|---|
| Test webhook fails | Ensure your URL is publicly accessible (not localhost). For local development, use a tool like ngrok. |
| Not receiving webhooks | Verify the correct events are checked in Project Settings and that your webhook URL is saved. |
| Receiving timeouts | Your endpoint must respond within 10 seconds. Move heavy work to a background job. |
| Missing events | Streampixel does not retry failed deliveries. If your server was down when the event fired, the notification is lost. Check your server logs. |
| Unexpected payload format | Ensure your server parses the Content-Type: application/json body correctly. |
| Duplicate events | Use uploadId + event as an idempotency key to skip duplicates. |
Quick reference
| Detail | Value |
|---|---|
| HTTP method | POST |
| Content type | application/json |
| Timeout | 10 seconds |
| Retries | None |
| Events available | 7 build pipeline events + 1 test event |
Next steps
Distribute a build
Combine
build.approved events with the Distribute API for a controlled CI/CD flow.Upload File API
The endpoint that triggers the build pipeline events documented above.