Skip to content

Webhooks

Webhooks allow Media Manager to send information to your own application or service when the state of a video changes.

Creating Webhooks

You can specify a URL to call from your team settings page. Once a webhook has been added you can reveal the webhook secret that we have generated for you. We will sign every request with this secret allowing you to check the request is valid and comes from us.

The endpoint should return a 2xx response status to be considered successful. Media Manager will try sending the same call 2 more times before stopping if no success status was returned. A webhook will result in a failure if the server does not respond within 3 seconds.

Verifying webhooks

To ensure that the webhook data is genuine, it is recommended to verify the request by checking the signature generated by Media Manager and sent as a HTTP header in each webform request.

Logic to do this is provided as PHP code in the “Reveal Secret” pop-up:

Webhook secret

Disabling Webhooks

To temporarily enable or disable a webhook, simply toggle the enabled switch.

Deleting Webhooks

An option to delete each webhook is available in the webhooks list:

Webhook table

Events List

We will send webhooks for the following events:

Media

  • media.created media has been uploaded.
  • media.upload.completed media has finished processing and is ready to publish.
  • media.upload.failed an error occurred during processing.
  • media.published media has been marked as published.
  • media.unpublished media has been marked as unpublished.
  • media.updated data associated with your media has been changed.
  • media.deleted media has been deleted, and is due for removal in 14 days.
  • media.restored media has been taken out of deleted state.
  • media.master.ready the master asset for your media is ready to download.
  • media.master.failed the master asset for your media failed to generate.

Livestreams

Livestream webhooks extend Media webhooks, when a livestream has been created the media.created webhook will be called. The same applies for published, unpublished, updated and deleted.

  • livestream.enabled a livestream has been marked as enabled, it can accept stream connections
  • livestream.disabled a livestream has been marked as disabled, it can no longer accept stream connections
  • livestream.started a livestream has been successfully received stream input and is actively broadcasting
  • livestream.idle a livestream has returned to idle state, this happens automatically 60 seconds after a stream has disconnected