PicaJet

Reference Glossary

Webhook

An automated HTTP callback a DAM sends to another system the instant a defined event occurs, such as an asset being approved, instead of that system having to repeatedly poll for changes.

Why it matters in a DAM

DAM-driven publishing pipelines depend on webhooks to trigger downstream automation the moment an asset's status changes — a webhook firing on 'asset approved' can push the file to a CMS or notify a Slack channel within seconds, while polling the API on a schedule wastes requests and introduces delay proportional to the polling interval. Webhooks are what let a DAM act as an active source of truth inside a real-time workflow, rather than a passive store that other systems have to remember to keep checking.

A worked example

asset.approved Push the asset to a CMS or PIM automatically
asset.deleted Remove the asset from downstream caches or CDNs
metadata.updated Re-sync product data in a connected e-commerce platform

Common mistake

Building a webhook receiver with no retry logic or signature verification, so a downstream outage silently drops events (assets never sync) and there's no way to confirm an incoming payload actually originated from the DAM rather than a spoofed request.

A webhook flips the usual client-server relationship: instead of another system repeatedly asking the DAM ‘has anything changed yet,’ the DAM itself sends an HTTP request to a URL the receiving system registered in advance, the moment a specific event happens. That event-driven push is faster than polling and dramatically cheaper at scale, since the DAM only sends data when there’s actually something to send.

Reliability is where webhook implementations tend to fall short in practice. A receiving system can be down or slow to respond when an event fires, and without retry logic on the sending side, that event — and whatever automation depended on it — is simply lost. Production-grade webhook setups also verify a signature on incoming payloads so the receiver can confirm a request genuinely came from the DAM and wasn’t forged by pointing a fake request at the same endpoint.

Frequently asked

What is a webhook?

An automated HTTP callback a DAM sends to another system the instant a defined event occurs, such as an asset being approved, instead of that system having to repeatedly poll for changes.

How does a webhook differ from polling?

Polling means a system repeatedly asks whether anything has changed; a webhook flips that so the DAM itself sends a request to a registered URL the moment the event happens, which is faster and cheaper at scale.

Give an example of a DAM webhook event.

asset.approved can push the file to a CMS or notify a Slack channel automatically; asset.deleted can remove the asset from downstream caches or CDNs.

What's the risk of a webhook receiver with no retry logic?

If the downstream system is down or slow when an event fires, that event, and whatever automation depended on it, is simply lost, with assets silently failing to sync.

Why does signature verification matter for webhooks?

It lets the receiver confirm an incoming payload genuinely came from the DAM and wasn't a forged request pointed at the same endpoint.

What role do webhooks play in DAM-driven publishing pipelines?

They let a DAM act as an active source of truth inside a real-time workflow, firing on an approval event to trigger downstream automation within seconds, rather than a passive store other systems have to remember to check.