Webhooks
Planned webhook events to react to uploads, AI analysis, status changes, and approvals within Polimake.
The team behind Polimake. We explore the intersection of technology, creativity, and automation.
Webhooks let your system receive events from Polimake when something relevant happens: a file is uploaded, AI analysis finishes, an asset changes status, or a piece is approved.
Status: preview contract. Webhooks may only be available under agreement or private beta.
Planned events
| Event | When it happens |
|---|---|
media.uploaded | A file has been uploaded successfully. |
media.analysis.completed | AI analysis of a media object has finished. |
media.updated | Metadata, status, or relevant fields change. |
media.deleted | A media object is deleted or marked as deleted. |
workflow.status_changed | An asset changes status in a workflow. |
workflow.approved | An asset or piece is approved. |
Payload
{
"id": "evt_01HX9T3VZV8R",
"object": "event",
"type": "media.analysis.completed",
"created_at": "2026-06-04T10:03:00Z",
"data": {
"object": {
"id": "media_01HX9R8K4Q2Z4T",
"object": "media_object",
"project_id": "brand-assets",
"status": "ready"
}
}
}
Verification
When webhook signing becomes available, each request will include a header similar to:
Polimake-Signature: t=1780567380,v1=SIGNATURE
Your integration should verify the signature before trusting the event.
Expected response
Your endpoint must respond with 2xx when the event is processed successfully.
HTTP/1.1 200 OK
If your system returns 5xx, Polimake may retry the event according to the configured retry policy.
Best practices
- Respond quickly and process heavy jobs in the background.
- Make your handler idempotent by using the event's
idfield. - Store received events so you can audit integrations.
- Don't rely on events arriving exactly once.
- If you need definitive state, query the media object via the API after receiving the webhook.
To explore this topic further, see Build: integrate Polimake.