API.Video · AsyncAPI Specification

Api Video Webhooks

Version

View Spec View on GitHub Artificial IntelligenceAnalyticsCDNEncodingLive StreamingTranscriptionVideoVideo-on-DemandAsyncAPIEvents

AsyncAPI Specification

Raw ↑
generated: '2026-11-05'
method: searched
generator: derive-webhooks.py
source: '[''openapi/api-video-webhooks-api-openapi.yml'']; delivery and signature details searched from https://docs.api.video/reference/create-and-manage-webhooks'
description: 'Event surface derived from the provider''s own OpenAPI: webhooks. No AsyncAPI document is published
  by the provider; this catalog lists the events the contract names.'
management_operations:
- LIST-webhooks
- POST-webhooks
- GET-Webhook
- DELETE-webhook
events:
- event: live-stream.broadcast.started
  description: Live stream started
  declared_in: webhooks
- event: live-stream.broadcast.ended
  description: Live stream ended
  declared_in: webhooks
- event: video.source.recorded
  description: Video source recorded
  declared_in: webhooks
- event: video.encoding.quality.completed
  description: Video encoding completed
  declared_in: webhooks
- event: video.caption.generated
  description: Video caption generated
  declared_in: webhooks
- event: video.summary.generated
  description: Video summary generated
  declared_in: webhooks
delivery:
  transport: HTTPS POST with a JSON body ({type, emittedAt, videoId, liveStreamId, encoding, quality})
  signature:
    headers:
    - X-Api-Video-WebhookID
    - X-Api-Video-Signature
    algorithm: HMAC SHA256 of the raw JSON body using the subscription signatureSecret
    secret_source: signatureSecret returned by POST /webhooks (201) and readable with GET /webhooks/{webhookId}
    since: '2024-09-26'
    docs: https://docs.api.video/reference/create-and-manage-webhooks
  retries: not documented
  subscription_limit: per-account cap on webhook URLs; exceeding it returns 400 "Your account has reached the webhook
    urls limit."
  management: subscribe via dashboard (Project settings > Webhooks) or POST /webhooks; list GET /webhooks; inspect
    GET /webhooks/{webhookId}; DELETE /webhooks/{webhookId} is permanent
  event_notes:
    video.encoding.quality.completed: fires once per HLS rendition (240p up to the source quality) plus once for
      the MP4 asset; a 720p upload yields 5 notifications
sources:
- https://docs.api.video/reference/create-and-manage-webhooks
- https://api.video/changelog/ (2024-09-26 Webhook verification is now available)

Work with this as data

Every AsyncAPI spec here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for asyncapi

4 MCP tools reach this
  • find_asyncapisBrowse and filter every AsyncAPI spec in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/api-video-webhooks"
All asyncapi
curl "https://apis.io/api/v1/asyncapis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.