Skip to main content

Documentation Index

Fetch the complete documentation index at: https://acme-3f0e8fe2.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Webhooks let your server react to render lifecycle events without polling.

Event types

EventFired when
image.completedImage render reaches completed
image.failedImage render reaches failed
video.completedVideo render reaches completed
video.failedVideo render reaches failed
collection.completedAll children of a collection finished

Per-render webhooks

Pass webhook_url in the render payload:
{
  "template_id": "tpl_abc",
  "modifications": [...],
  "webhook_url": "https://your.app/hooks/imtegrate"
}
Imtegrate POSTs to that URL once the render is completed or failed.

Org-level webhooks

In Settings → Webhooks, register an endpoint that receives all events for the organization. Useful when you don’t control the request (e.g., dashboard-triggered renders).

Payload

{
  "type": "image.completed",
  "created_at": "2026-05-04T10:01:23Z",
  "data": {
    "id": "img_xyz",
    "status": "completed",
    "result_url": "https://storage.imtegrate.com/...",
    "template_id": "tpl_abc",
    "duration_ms": 3210
  }
}

Signature verification

Each request includes an X-Imtegrate-Signature header — HMAC-SHA256 of the raw body, keyed by the webhook secret shown at creation time.
import crypto from "node:crypto";

function verify(rawBody: string, signature: string, secret: string) {
  const mac = crypto.createHmac("sha256", secret).update(rawBody).digest("hex");
  return crypto.timingSafeEqual(Buffer.from(mac), Buffer.from(signature));
}
Always verify the signature before trusting the payload. Reject any request whose signature doesn’t match.

Retries

Failed deliveries (non-2xx response or timeout) are retried with exponential backoff: 1 min, 5 min, 30 min, 2 h, 12 h. After 5 failed attempts the event is dropped and surfaced in the dashboard.

Idempotency

Each delivery includes X-Imtegrate-Delivery-Id. Treat it as an idempotency key on your side — the same event may be delivered more than once.