Webhooks
A webhook allows your application to receive real-time HTTP notifications for events. Currently, this functionality is available for the following events:
- A video indexing task has finished or failed.
- An async analysis task has finished or failed.
Note
Webhooks are supported for the Search and Analyze APIs but are unavailable for the Embed API.
The platform emits analyze.task.ready and analyze.task.failed for async analysis tasks. It does not emit an analyze.task.canceled webhook. For an individual task without a terminal task webhook, poll GET /analyze/tasks/{task_id} with exponential backoff and jitter until the status is ready, failed, or canceled. For batch-owned tasks, consume the analyze.batch.canceled and analyze.batch.expired events, then retrieve the parent batch status and results once instead of polling every item. Neither batch event emits a canceled event for each task.
Use Webhooks to receive notifications
To receive event notifications for events in your application, use the steps in this section:
- Create an HTTP endpoint in your application. The platform sends notifications to your endpoint as POST requests with a JSON payload. For details about the schema, see the Response schema section.
- Register your webhook. Once you’ve created an HTTP endpoint in your application, you must go to the Webhooks page and register your webhook. For instructions, see the Register a webhook section.
- Handle requests. Ensure that your application meets all the requirements for processing notifications.