Webhooks & job notifications
Long-running work in CataZenta (imports, exports, bulk updates) runs as jobs. Integrators should treat jobs as the primary async pattern.
Recommended pattern: poll jobs
- Start work —
POSTexport/import job (Integration or Job API). - Receive
job_idin the response. - Poll
GET /v1/jobs/{id}until status iscompleted,failed, orcancelled. - Read job items for per-SKU errors and payloads.
See recipes: Poll an export job · Export to channel.
Example poll loop
JOB_ID="your-job-uuid"
TOKEN="your-access-token"
until true; do
STATUS=$(curl -s "https://api.catazenta.com/v1/jobs/${JOB_ID}" \
-H "Authorization: Bearer ${TOKEN}" | jq -r '.data.status')
echo "status: $STATUS"
case "$STATUS" in
completed|failed|cancelled) break ;;
*) sleep 5 ;;
esac
done
Outbound webhooks (roadmap)
CataZenta is extending event notifications for:
| Event (planned) | Use case |
|---|---|
export_job.completed | Trigger downstream ERP update |
export_job.failed | Alert channel ops |
import_job.completed | Kick off enrichment workflow |
product.published | Sync to search index |
When enabled for your tenant, configuration will include:
- HTTPS callback URL
- Signing secret for
X-CataZenta-Signatureverification - Retry policy (exponential backoff)
Contact your account team to join the webhooks preview.
Until webhooks are enabled
| Need | Approach |
|---|---|
| Near-real-time export status | Poll job API every 5–15s |
| Dashboard visibility | PIM UI job monitor |
| Automation | Scheduled poll + MCP list_export_jobs |