# Video Management Webhooks - **OpenAPI Version:** `3.1.1` - **API Version:** `1.0.0` ## Servers - **URL:** `https://{your-endpoint-url}` ## Operations ### video\_management.video\_quiz\_completed - **Method:** `POST` - **Path:** `video_management.video_quiz_completed` - **Tags:** surveys The **Quiz Completed** event is triggered every time a user completes the video quiz. ## Prerequisites - A [Pro or higher account plan](https://www.zoom.us/pricing?). - A Zoom Video Management license. - Enable **Event Subscription** for your [Marketplace app](https://marketplace.zoom.us/user/build) with the following configurations: - A valid **Event Notification Endpoint URL**. - The **Quiz Completed** subscription enabled under the **Video Management** event. #### Request Body ##### Content-Type: application/json - **`event` (required)** `string` — The name of the event. video\_management.video\_quiz\_completed. - **`event_ts` (required)** `integer`, format: `int64` — A timestamp when the event occurred. - **`payload` (required)** `object` - **`account_id` (required)** `string` — The account ID of the host who published the video channel. - **`object` (required)** `object` — The Zoom Event description. - **`channel_id` (required)** `string` — The ID of the channel. - **`completed_at` (required)** `string`, format: `date-time` — The the time the quiz was completed. \`yyyy-MM-dd\`T\`HH:mm:ssZ - **`quiz_id` (required)** `string` — The ID of the quiz. - **`video_id` (required)** `string` — The ID of the video. - **`quiz_name`** `string` — The name of the quiz. - **`user_id`** `string` — The ID of the user who completed the quiz. - **`video_name`** `string` — The name of the video. **Example:** ```json { "event": "", "event_ts": 1, "payload": { "account_id": "ACC9Dllddp39dagjLj9j", "object": { "channel_id": "iso9Dllddp39dagjLj9j", "video_id": "iso9Dllddp39dagjLj9j", "video_name": "Demo Video", "quiz_id": "csduzfv3JwTeyR5QpC3PXw52", "quiz_name": "Validation check", "user_id": "csduzfv3JwTeyR5QpC3P=", "completed_at": "2022-06-03T20:51:00Z" } } } ``` #### Responses ##### Status: 200 Successfully received the webhook event. ### video\_management.channel\_video\_added - **Method:** `POST` - **Path:** `video_management.channel_video_added` - **Tags:** Videos The **channel video added** event is triggered every time a user in your account, or your app, adds a video to a channel. ## Prerequisites - A [Pro or higher account plan](https://www.zoom.us/pricing?) - A Zoom Video Management license - Enable **Event Subscription** for your [Marketplace app](https://marketplace.zoom.us/user/build) with the following configurations: - A valid **Event Notification Endpoint URL** - The **Channel Video Added** subscription enabled under the **Video Management** event #### Request Body ##### Content-Type: application/json - **`event` (required)** `string` — The name of the event. \`video\_management.channel\_video\_added\`. - **`event_ts` (required)** `integer`, format: `int64` — A timestamp of when the event occurred. - **`payload` (required)** `object` - **`account_id` (required)** `string` — The account ID of the host who published the video channel. - **`object` (required)** `object` — The Zoom Event description. - **`channel_id` (required)** `string` — The channel ID. - **`video_id` (required)** `string` — The video ID. - **`meeting_id`** `string` — Zoom meeting ID or UUID. This is available only for recordings. **Example:** ```json { "event": "", "event_ts": 1, "payload": { "account_id": "", "object": { "channel_id": "iso9Dllddp39dagjLj9j", "video_id": "csduzfv3JwTeyR5QpC3PXw52", "meeting_id": "rec1zfv3JwTeyR5QpC3PXw52" } } } ``` #### Responses ##### Status: 200 Successfully received the webhook event. ### video\_management.channel\_published - **Method:** `POST` - **Path:** `video_management.channel_published` - **Tags:** Channels The **Channel Published** event is triggered every time a user in your account or your app, publishes a video channel. ## Prerequisites - Pro or a higher plan. - A Zoom Video Management license. - Enable **Event Subscription** for your [Marketplace app](https://marketplace.zoom.us/user/build) with the following configurations: - A valid **Event Notification Endpoint URL**. - The **Channel published** subscription enabled under the **Video Management** event. #### Request Body ##### Content-Type: application/json - **`event` (required)** `string` — The name of the event. video\_management.channel\_published. - **`event_ts` (required)** `integer`, format: `int64` — A timestamp when the event occurred. - **`payload` (required)** `object` - **`account_id` (required)** `string` — The account ID of the host who published the video channel. - **`object` (required)** `object` — The Zoom Event description. - **`channel_id` (required)** `string` — The channel ID. - **`name` (required)** `string` — The name of the channel. - **`owner_id` (required)** `string` — The ID of the channel owner. - **`description`** `string` — Channel description. **Example:** ```json { "event": "", "event_ts": 1, "payload": { "account_id": "", "object": { "channel_id": "iso9Dllddp39dagjLj9j", "name": "FoodieFlicks", "description": "A cinematic journey through the world of cuisine!.", "owner_id": "abc9Dllddp39dagjLj9j" } } } ``` #### Responses ##### Status: 200 Successfully received the webhook event. ### video\_management.channel\_unpublished - **Method:** `POST` - **Path:** `video_management.channel_unpublished` - **Tags:** Channels The **Channel unpublished** event is triggered every time a user in your account or your app unpublishes a video channel ## Prerequisites - A [Pro or higher account plan](https://www.zoom.us/pricing?). - A Zoom Video Management license. - Enable **Event Subscription** for your [Marketplace app](https://marketplace.zoom.us/user/build) with the following configurations: - A valid **Event Notification Endpoint URL**. - The **Channel unpublished** subscription enabled under the **Video Management** event. #### Request Body ##### Content-Type: application/json - **`event` (required)** `string` — The name of the event. - **`event_ts` (required)** `integer`, format: `int64` — A timestamp of when the event occurred. - **`payload` (required)** `object` - **`account_id` (required)** `string` — The account ID of the host who published the video channel. - **`object` (required)** `object` — The Zoom Event description. - **`channel_id` (required)** `string` — The channel ID. - **`name` (required)** `string` — The name of the channel. - **`owner_id` (required)** `string` — The ID of the channel owner. - **`description`** `string` — The description of the channel. **Example:** ```json { "event": "", "event_ts": 1, "payload": { "account_id": "", "object": { "channel_id": "iso9Dllddp39dagjLj9j", "name": "FoodieFlicks", "description": "A cinematic journey through the world of cuisine!.", "owner_id": "abc9Dllddp39dagjLj9j" } } } ``` #### Responses ##### Status: 200 Successfully received the webhook event. ### video\_management.channel\_video\_removed - **Method:** `POST` - **Path:** `video_management.channel_video_removed` - **Tags:** Videos The **channel video removed** event is triggered every time a user in your account or your app, removed a video from a channel. ## Prerequisites - A [Pro or higher account plan](https://www.zoom.us/pricing?) - A Zoom Video Management license - Enable **Event Subscription** for your [Marketplace app](https://marketplace.zoom.us/user/build) with the following configurations: - A valid **Event Notification Endpoint URL** - The **Channel Video Removed** subscription enabled under the **Video Management** event #### Request Body ##### Content-Type: application/json - **`event` (required)** `string` — The name of the event. \`video\_management.channel\_video\_removed\`. - **`event_ts` (required)** `integer`, format: `int64` — The timestamp of when the event occurred. - **`payload` (required)** `object` - **`account_id` (required)** `string` — The account ID of the host who published the video channel. - **`object` (required)** `object` — The Zoom event description. - **`channel_id` (required)** `string` — The channel ID. - **`video_id` (required)** `string` — The video ID. - **`meeting_id`** `string` — Zoom meeting ID or UUID. This is available only for recordings. **Example:** ```json { "event": "", "event_ts": 1, "payload": { "account_id": "", "object": { "channel_id": "iso9Dllddp39dagjLj9j", "video_id": "csduzfv3JwTeyR5QpC3PXw52", "meeting_id": "rec1zfv3JwTeyR5QpC3PXw52" } } } ``` #### Responses ##### Status: 200 Successfully received the webhook event. ## Schemas ### Video\_management.video\_quiz\_completedEvent - **Type:**`object` * **`event` (required)** `string` — The name of the event. video\_management.video\_quiz\_completed. * **`event_ts` (required)** `integer`, format: `int64` — A timestamp when the event occurred. * **`payload` (required)** `object` - **`account_id` (required)** `string` — The account ID of the host who published the video channel. - **`object` (required)** `object` — The Zoom Event description. - **`channel_id` (required)** `string` — The ID of the channel. - **`completed_at` (required)** `string`, format: `date-time` — The the time the quiz was completed. \`yyyy-MM-dd\`T\`HH:mm:ssZ - **`quiz_id` (required)** `string` — The ID of the quiz. - **`video_id` (required)** `string` — The ID of the video. - **`quiz_name`** `string` — The name of the quiz. - **`user_id`** `string` — The ID of the user who completed the quiz. - **`video_name`** `string` — The name of the video. **Example:** ```json { "event": "", "event_ts": 1, "payload": { "account_id": "ACC9Dllddp39dagjLj9j", "object": { "channel_id": "iso9Dllddp39dagjLj9j", "video_id": "iso9Dllddp39dagjLj9j", "video_name": "Demo Video", "quiz_id": "csduzfv3JwTeyR5QpC3PXw52", "quiz_name": "Validation check", "user_id": "csduzfv3JwTeyR5QpC3P=", "completed_at": "2022-06-03T20:51:00Z" } } } ``` ### Video\_management.channel\_video\_addedEvent - **Type:**`object` * **`event` (required)** `string` — The name of the event. \`video\_management.channel\_video\_added\`. * **`event_ts` (required)** `integer`, format: `int64` — A timestamp of when the event occurred. * **`payload` (required)** `object` - **`account_id` (required)** `string` — The account ID of the host who published the video channel. - **`object` (required)** `object` — The Zoom Event description. - **`channel_id` (required)** `string` — The channel ID. - **`video_id` (required)** `string` — The video ID. - **`meeting_id`** `string` — Zoom meeting ID or UUID. This is available only for recordings. **Example:** ```json { "event": "", "event_ts": 1, "payload": { "account_id": "", "object": { "channel_id": "iso9Dllddp39dagjLj9j", "video_id": "csduzfv3JwTeyR5QpC3PXw52", "meeting_id": "rec1zfv3JwTeyR5QpC3PXw52" } } } ``` ### Video\_management.channel\_publishedEvent - **Type:**`object` * **`event` (required)** `string` — The name of the event. video\_management.channel\_published. * **`event_ts` (required)** `integer`, format: `int64` — A timestamp when the event occurred. * **`payload` (required)** `object` - **`account_id` (required)** `string` — The account ID of the host who published the video channel. - **`object` (required)** `object` — The Zoom Event description. - **`channel_id` (required)** `string` — The channel ID. - **`name` (required)** `string` — The name of the channel. - **`owner_id` (required)** `string` — The ID of the channel owner. - **`description`** `string` — Channel description. **Example:** ```json { "event": "", "event_ts": 1, "payload": { "account_id": "", "object": { "channel_id": "iso9Dllddp39dagjLj9j", "name": "FoodieFlicks", "description": "A cinematic journey through the world of cuisine!.", "owner_id": "abc9Dllddp39dagjLj9j" } } } ``` ### Video\_management.channel\_unpublishedEvent - **Type:**`object` * **`event` (required)** `string` — The name of the event. * **`event_ts` (required)** `integer`, format: `int64` — A timestamp of when the event occurred. * **`payload` (required)** `object` - **`account_id` (required)** `string` — The account ID of the host who published the video channel. - **`object` (required)** `object` — The Zoom Event description. - **`channel_id` (required)** `string` — The channel ID. - **`name` (required)** `string` — The name of the channel. - **`owner_id` (required)** `string` — The ID of the channel owner. - **`description`** `string` — The description of the channel. **Example:** ```json { "event": "", "event_ts": 1, "payload": { "account_id": "", "object": { "channel_id": "iso9Dllddp39dagjLj9j", "name": "FoodieFlicks", "description": "A cinematic journey through the world of cuisine!.", "owner_id": "abc9Dllddp39dagjLj9j" } } } ``` ### Video\_management.channel\_video\_removedEvent - **Type:**`object` * **`event` (required)** `string` — The name of the event. \`video\_management.channel\_video\_removed\`. * **`event_ts` (required)** `integer`, format: `int64` — The timestamp of when the event occurred. * **`payload` (required)** `object` - **`account_id` (required)** `string` — The account ID of the host who published the video channel. - **`object` (required)** `object` — The Zoom event description. - **`channel_id` (required)** `string` — The channel ID. - **`video_id` (required)** `string` — The video ID. - **`meeting_id`** `string` — Zoom meeting ID or UUID. This is available only for recordings. **Example:** ```json { "event": "", "event_ts": 1, "payload": { "account_id": "", "object": { "channel_id": "iso9Dllddp39dagjLj9j", "video_id": "csduzfv3JwTeyR5QpC3PXw52", "meeting_id": "rec1zfv3JwTeyR5QpC3PXw52" } } } ```