Webhooks: events and signature verification

Get notified when jobs, batches and workflows finish, and verify that requests really come from ClearCut.

Os artigos de ajuda estão disponíveis em inglês.

Set up an endpoint

In Developers → Webhooks, add your HTTPS URL and choose events. Copy the signing secret: it's shown only once. Use Send test to try it. You can also pass webhook_url on a single /removebg or /remove-video-bg request.

Events

EventWhen
job.created, job.started, job.processingA video job is queued, picked up, and starts processing
job.completed / job.failedAny job finishes or fails
batch.created, batch.completed, batch.partially_completed, batch.failedBatch progress
workflow.started, workflow.awaiting_approval, workflow.completed, workflow.failedWorkflow runs
asset.approved, asset.rejected, review.comment_addedReview decisions and comments
credits.low, credits.reserved, credits.releasedCredit balance changes
subscription.updatedPlan changes
api_key.rate_limitedA key hit its limit

Verify the signature

Every delivery has an X-ClearCut-Signature header like t=1780000000,v1=5257a8….

  1. Compute HMAC-SHA256 of {t}.{raw request body} with your signing secret.
  2. Compare it with v1 using a constant-time comparison.
  3. Reject requests whose t is more than 5 minutes old.

Delivery and retries

Respond with any 2xx status within 10 seconds. Failed deliveries are retried up to 3 times with increasing delays. You can see every attempt under the endpoint's deliveries. Webhook URLs must be public addresses.

Ainda precisa de ajuda?

Falar com o suporte