{"openapi":"3.0.0","info":{"title":"Video Management","description":"Use the Video Management API to manage channels, channel permissions, playlists, and videos.\n\n You can create, delete, update, and list the available channels and playlists. You can add and remove videos from channels and playlists or list the videos in a channel or playlist.","termsOfService":"https://zoom.us/docs/en-us/zoom_api_license_and_tou.html","contact":{"name":"Zoom Developers","url":"https://developer.zoom.us/"},"version":"2"},"externalDocs":{"description":"Find out more about Swagger","url":"https://swagger.io"},"servers":[{"url":"https://api.zoom.us/v2"}],"paths":{"/video_management/channels":{"get":{"tags":["Channels"],"summary":"List channels","description":"Retrieves the list of channels.\n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:read`,`video_mgmt_channels:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:read:list_channels`,`video_mgmt:read:list_channels:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"listVideoChannels","parameters":[{"name":"next_page_token","in":"query","description":"The next page token paginates through a set of large results. A next page token is returned whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}},{"name":"page_size","in":"query","description":"The number of records returned in a single API call.","required":false,"schema":{"maximum":300,"type":"integer","example":30,"default":30}},{"name":"user_id","in":"query","description":"The user ID or email address of the channel owner. It is used for an account-level [OAuth app](https://developers.zoom.us/docs/integrations/create/). Providing this parameter will return only the channels owned by the specified user. Omit this field for user-level apps.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}}],"responses":{"200":{"description":"**HTTP Status Code:** `200`   Channel Information.","content":{"application/json":{"schema":{"title":"Video channels pagination result","type":"object","properties":{"total_records":{"type":"number","description":"The total number of records.","example":1},"next_page_token":{"type":"string","description":"The next page token.","example":"yqT59YnBSHqvDdNnkeHQsA"},"channels":{"maxItems":300,"type":"array","description":"Channels","items":{"description":"The list of channels.","allOf":[{"type":"object","properties":{"channel_id":{"type":"string","description":"The channel ID.","example":"iso9Dllddp39dagjLj9j"},"name":{"type":"string","description":"The name of the channel.","example":"FoodieFlicks"},"description":{"type":"string","description":"A description of the channel.","example":"A cinematic journey through the world of cuisine!."},"owner_id":{"type":"string","description":"The ID of the channel owner.","example":"abc9Dllddp39dagjLj9j"},"status":{"type":"string","description":"The channel status.\n * `PUBLISH` - A published channel.\n * `DRAFT` - A draft channel.","example":"PUBLISH","enum":["PUBLISH","DRAFT"]},"categories":{"maxItems":50,"type":"array","description":"The category of the channel.","items":{"type":"string","example":"Education"}}}}]}}}}}}},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:read","video_mgmt_channels:read:admin","video_mgmt:read:list_channels","video_mgmt:read:list_channels:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:read","video_mgmt_channels:read:admin"],"x-granular-scopes":["video_mgmt:read:list_channels","video_mgmt:read:list_channels:admin"]}},"post":{"tags":["Channels"],"summary":"Create a channel","description":"Creates a channel for managing videos. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:write`,`video_mgmt_channels:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:write:channel`,`video_mgmt:write:channel:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"createChannel","parameters":[{"name":"user_id","in":"query","description":"The user ID or email address of the on-behalf-of user who has the permission to create a channel. It's used for an account-level [OAuth app](https://developers.zoom.us/docs/integrations/create/). For user-level apps, this should not be used.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}}],"requestBody":{"content":{"application/json":{"schema":{"title":"Channel","required":["name"],"type":"object","properties":{"name":{"maxLength":100,"type":"string","description":"The name of the channel.","example":"FoodieFlicks"},"description":{"maxLength":5000,"type":"string","description":"A description of the channel.","example":"A cinematic journey through the world of cuisine!"},"categories":{"maxItems":3,"type":"array","description":"The category of the channel. Use categories to classify your videos and help viewers filter videos.","items":{"type":"string","example":"Education"}},"thumbnails":{"maxItems":1,"type":"array","description":"Thumbnail metadata updates. Each entry references an uploaded file by `file_id`.","example":[{"file_id":"xBvggqyjQUal6TecwMlYwE123"}],"items":{"required":["file_id"],"type":"object","properties":{"file_id":{"type":"string","description":"The unique file reference ID from the file upload API.","example":"xBvggqyjQUal6TecwMlYwE123"}}}}}}}}},"responses":{"201":{"description":"**HTTP Status Code:** `201`  \n \n Video channel returned","content":{"application/json":{"schema":{"title":"Video Channel","type":"object","properties":{"channel_id":{"type":"string","description":"The video channel ID.","example":"iso9Dllddp39dagjLj9j"},"name":{"type":"string","description":"The name of the channel.","example":"FoodieFlicks"},"description":{"type":"string","description":"A description of the channel.","example":"A cinematic journey through th world of cuisine!"},"status":{"type":"string","description":"The video channel status: \n * `PUBLISHED` - A published channel.\n * `DRAFT` - A draft channel.","example":"PUBLISHED","enum":["PUBLISHED","DRAFT"]},"categories":{"maxItems":3,"type":"array","description":"The category of the channel.","items":{"type":"string","example":"Education"}}}}}}},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:write","video_mgmt_channels:write:admin","video_mgmt:write:channel","video_mgmt:write:channel:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:write","video_mgmt_channels:write:admin"],"x-granular-scopes":["video_mgmt:write:channel","video_mgmt:write:channel:admin"]}}},"/video_management/channels/{channelId}":{"get":{"tags":["Channels"],"summary":"Get channel details","description":"Returns the details of the video channel.\n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:read`,`video_mgmt_channels:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:read:channel`,`video_mgmt:read:channel:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"getChannelDetail","parameters":[{"name":"channelId","in":"path","description":"The channel ID.","required":true,"schema":{"type":"string","example":"iso9Dllddp39dagjLj9j"}}],"responses":{"200":{"description":"**HTTP Status Code:** `200`  \n \n Video channel returned","content":{"application/json":{"schema":{"title":"Video channel","type":"object","properties":{"channel_id":{"type":"string","description":"The channel ID.","example":"iso9Dllddp39dagjLj9j"},"name":{"type":"string","description":"The name of the channel.","example":"FoodieFlicks"},"description":{"type":"string","description":"A description of the channel.","example":"A cinematic journey through the world of cuisine!."},"owner_id":{"type":"string","description":"The ID of the channel owner.","example":"abc9Dllddp39dagjLj9j"},"status":{"type":"string","description":"The channel status. \n * `PUBLISH` - Published channel.\n * `DRAFT` - Draft channel.","example":"PUBLISH","enum":["PUBLISH","DRAFT"]},"categories":{"maxItems":50,"type":"array","description":"The category of the channel.","items":{"type":"string","example":"Education"}},"channel_link":{"type":"string","description":"A link to the channel.","example":"https://videocenter.zoom.us/e/channels/MYysLCuzQ0mmk1CvarkaDA"},"access_type":{"type":"string","description":"The channel access type: \n * `PEOPLE_WITH_ACCESS` = Only people with access \n * `ANYONE_IN_ORG` = Anyone in the same organization can access using the channel link\n * `ANYONE_WITH_LINK` = Anyone can access using the channel link","example":"PEOPLE_WITH_ACCESS","enum":["PEOPLE_WITH_ACCESS","ANYONE_IN_ORG","ANYONE_WITH_LINK"]},"thumbnails":{"maxItems":1,"type":"array","description":"A list of thumbnail images associated with the channel.","example":[{"file_url":"https://files.zoom.us/thumbnails/thumb123.jpg"}],"items":{"type":"object","properties":{"file_url":{"type":"string","description":"A public or pre-signed URL to download or view the thumbnail.","format":"uri","example":"https://files.zoom.us/thumbnails/thumb123.jpg"}}}}}}}}},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n **Error Code:** `30661005` <br>\n Channel not found. <br>\n"},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:read","video_mgmt_channels:read:admin","video_mgmt:read:channel","video_mgmt:read:channel:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:read","video_mgmt_channels:read:admin"],"x-granular-scopes":["video_mgmt:read:channel","video_mgmt:read:channel:admin"]}},"delete":{"tags":["Channels"],"summary":"Delete channel","description":"Deletes a video channel. \n\n**Prerequisites**:\n* A Pro or higher account plan.\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:write`,`video_mgmt_channels:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:delete:channel`,`video_mgmt:delete:channel:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"DeleteChannel","parameters":[{"name":"channelId","in":"path","description":"The video channel ID.","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"responses":{"204":{"description":"**HTTP Status Code:** `204` Channel deleted successfully."},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n **Error Code:** `30661005` <br>\n Channel not found. <br>\n"},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:write","video_mgmt_channels:write:admin","video_mgmt:delete:channel","video_mgmt:delete:channel:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:write","video_mgmt_channels:write:admin"],"x-granular-scopes":["video_mgmt:delete:channel","video_mgmt:delete:channel:admin"]}},"patch":{"tags":["Channels"],"summary":"Update channel","description":"Updates a video channel. \n\n**Prerequisites**:\n* A Pro or higher account plan.\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:write`,`video_mgmt_channels:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:update:channel`,`video_mgmt:update:channel:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"UpdateVideoChannel","parameters":[{"name":"channelId","in":"path","description":"The video channel ID.","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"requestBody":{"content":{"application/json":{"schema":{"title":"Video Channel","type":"object","properties":{"name":{"maxLength":100,"type":"string","description":"The name of the channel.","example":"FoodieFlicks"},"description":{"maxLength":5000,"type":"string","description":"Channel description.","example":"A cinematic journey through the world of cuisine!"},"categories":{"maxItems":3,"type":"array","description":"The category of the channel. Categories allow you to classify your videos and help viewers filter videos.","items":{"type":"string","example":"Education"}},"access_type":{"type":"string","description":"The channel access type: \n * `PEOPLE_WITH_ACCESS` = Only people with access \n * `ANYONE_IN_ORG` = Anyone in the same organization can access using the channel link\n * `ANYONE_WITH_LINK` = Anyone can access using the channel link","example":"PEOPLE_WITH_ACCESS","enum":["PEOPLE_WITH_ACCESS","ANYONE_IN_ORG","ANYONE_WITH_LINK"]},"thumbnails":{"maxItems":1,"type":"array","description":"The thumbnail metadata updates. Each entry references an uploaded file by `file_id`.","example":[{"file_id":"xBvggqyjQUal6TecwMlYwE123"}],"items":{"required":["file_id"],"type":"object","properties":{"file_id":{"type":"string","description":"The unique file reference ID from the file upload API.","example":"xBvggqyjQUal6TecwMlYwE123"}}}}}}}}},"responses":{"204":{"description":"**HTTP Status Code:** `204`  \n \n Channel updated successfully."},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n **Error Code:** `30661005` <br>\n Channel not found. <br>\n"},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:write","video_mgmt_channels:write:admin","video_mgmt:update:channel","video_mgmt:update:channel:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:write","video_mgmt_channels:write:admin"],"x-granular-scopes":["video_mgmt:update:channel","video_mgmt:update:channel:admin"]}}},"/video_management/channels/{channelId}/actions":{"patch":{"tags":["Channels"],"summary":" Channel actions","description":"Perform state transition actions on a video channel . \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:write`,`video_mgmt_channels:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:update:channel`,`video_mgmt:update:channel:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"channelActions","parameters":[{"name":"channelId","in":"path","description":"The video channel ID.","required":true,"schema":{"type":"string","example":"iso9Dllddp39dagjLj9j"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"operation":{"type":"string","description":"The available actions for a video channel. \n* `publish` &mdash; Publish the channel.  \n* `unpublish` &mdash; Un-publish the published channel.","example":"publish","enum":["publish","unpublish"]}}}}}},"responses":{"204":{"description":"**HTTP Status Code:** `204`  \n \n Channel status changed successfully."},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n **Error Code:** `30661005` <br>\n Channel not found <br>\n"},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:write","video_mgmt_channels:write:admin","video_mgmt:update:channel","video_mgmt:update:channel:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:write","video_mgmt_channels:write:admin"],"x-granular-scopes":["video_mgmt:update:channel","video_mgmt:update:channel:admin"]}}},"/video_management/channels/{channelId}/permissions":{"get":{"tags":["Permissions"],"summary":"List channel permissions","description":"Retrieves the list of permissions for a channel. \\n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:read`,`video_mgmt_channels:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:read:list_permissions`,`video_mgmt:read:list_permissions:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"listChannelPermissions","parameters":[{"name":"channelId","in":"path","description":"The channel ID.","required":true,"schema":{"type":"string","example":"iso9Dllddp39dagjLj9j"}},{"name":"user_id","in":"query","description":"Optional filter for a permission entry. Supports a Zoom user ID or an email address. If an email does not resolve to a Zoom user, the API falls back to matching external shared users by email in a case-insensitive manner.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}},{"name":"next_page_token","in":"query","description":"The next page token is used to paginate through a large set of results. A next page token is returned whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}},{"name":"page_size","in":"query","description":"The number of records returned in a single API call.","required":false,"schema":{"maximum":300,"type":"integer","example":30,"default":30}}],"responses":{"200":{"description":"**HTTP Status Code:** `200`   Channel permission information.","content":{"application/json":{"schema":{"title":"Channel permissions pagination result","type":"object","properties":{"total_records":{"type":"number","description":"The total number of records.","example":10},"next_page_token":{"type":"string","description":"The next page token.","example":"yqT59YnBSHqvDdNnkeHQsA"},"permissions":{"maxItems":300,"type":"array","description":"THe list of permissions.","items":{"type":"object","properties":{"user_id":{"type":"string","description":"The Zoom user ID. This field is returned only for same-account Zoom users. For external or unregistered users, this field returns null.","nullable":true,"example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"},"chat_channel_id":{"type":"string","description":"The chat channel ID.","example":"dc1731cf94a842bfb43e8b0fe13d2a46@conference.xmppdev.zoom.us"},"display_name":{"type":"string","description":"The display name of the user.","example":"John Doe"},"role":{"type":"string","description":"The channel user's role: \n * `OWNER` = The channel owner\n * `COLLABORATOR` = Channel user with collaborator permissions \n * `VIEWER` = Channel user with view permissions","example":"VIEWER","enum":["OWNER","COLLABORATOR","VIEWER"]},"invite_status":{"type":"string","description":"The current status of the invitation. Collaborators must accept the invitation that was emailed to them before they can manage a channel.","example":"PENDING","enum":["PENDING","ACCEPTED"],"x-enum-descriptions":["PENDING - Invitation sent but not yet accepted","ACCEPTED - Invitation accepted"]}},"description":"The list of channel permissions."}}}}}}},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n **Error Code:** `30661005` <br>\n Channel not found <br>\n"},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:read","video_mgmt_channels:read:admin","video_mgmt:read:list_permissions","video_mgmt:read:list_permissions:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:read","video_mgmt_channels:read:admin"],"x-granular-scopes":["video_mgmt:read:list_permissions","video_mgmt:read:list_permissions:admin"]}},"post":{"tags":["Permissions"],"summary":"Create channel permissions","description":"Creates permissions for the given channel ID. Add users, such as collaborators or viewers, to the channel. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:write`,`video_mgmt_channels:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:write:permissions`,`video_mgmt:write:permissions:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `MEDIUM`","operationId":"createChannelPermissions","parameters":[{"name":"channelId","in":"path","description":"The channel ID","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"permissions":{"maxItems":300,"type":"array","description":"The list of channel permissions to be added.","items":{"allOf":[{"required":["role"],"type":"object","properties":{"role":{"type":"string","description":"The channel user's role: \n * `COLLABORATOR` = A channel user with collaborator permissions \n * `VIEWER` = A channel user with view permissions","example":"VIEWER","enum":["COLLABORATOR","VIEWER"]}}},{"oneOf":[{"required":["user_id"],"type":"object","properties":{"user_id":{"type":"string","description":"The Zoom user ID.","example":"325bde9e82c84a179ac0f612f7688df7"}},"additionalProperties":false},{"required":["chat_channel_id"],"type":"object","properties":{"chat_channel_id":{"type":"string","description":"The chat channel ID.","example":"dc1731cf94a842bfb43e8b0fe13d2a46@conference.xmppdev.zoom.us"}},"additionalProperties":false}]}]}}}}}}},"responses":{"204":{"description":"success response"},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n **Error Code:** `30661001` <br>\n Param is invalid <br>\n"},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n **Error Code:** `30661005` <br>\n Channel not found <br>\n"},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:write","video_mgmt_channels:write:admin","video_mgmt:write:permissions","video_mgmt:write:permissions:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:write","video_mgmt_channels:write:admin"],"x-granular-scopes":["video_mgmt:write:permissions","video_mgmt:write:permissions:admin"]}},"delete":{"tags":["Permissions"],"summary":"Delete channel permissions","description":"Delete channel permissions. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:write`,`video_mgmt_channels:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:delete:permissions`,`video_mgmt:delete:permissions:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"DeleteChannelPermissions","parameters":[{"name":"channelId","in":"path","description":"The channel ID","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"permissions":{"maxItems":300,"type":"array","description":"The permissions to delete.","items":{"description":"The list of channel permissions to be deleted.","oneOf":[{"required":["user_id"],"type":"object","properties":{"user_id":{"type":"string","description":"The Zoom user ID.","example":"325bde9e82c84a179ac0f612f7688df7"}},"additionalProperties":false},{"required":["chat_channel_id"],"type":"object","properties":{"chat_channel_id":{"type":"string","description":"The chat channel ID.","example":"dc1731cf94a842bfb43e8b0fe13d2a46@conference.xmppdev.zoom.us"}},"additionalProperties":false}]}}}}}}},"responses":{"204":{"description":"No content."},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n **Error Code:** `30661005` <br>\n Channel not found <br>\n"},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:write","video_mgmt_channels:write:admin","video_mgmt:delete:permissions","video_mgmt:delete:permissions:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:write","video_mgmt_channels:write:admin"],"x-granular-scopes":["video_mgmt:delete:permissions","video_mgmt:delete:permissions:admin"]}},"patch":{"tags":["Permissions"],"summary":"Update channel permissions","description":"Updates channel permissions. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:write`,`video_mgmt_channels:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:update:permissions`,`video_mgmt:update:permissions:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"updateChannelPermissions","parameters":[{"name":"channelId","in":"path","description":"The channel ID.","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"permissions":{"maxItems":300,"type":"array","description":"The list of channel permissions to be updated.","items":{"allOf":[{"required":["role"],"type":"object","properties":{"role":{"type":"string","description":"The channel user's role: \n * `COLLABORATOR` = A channel user with collaborator permissions \n * `VIEWER` = A channel user with view permissions","example":"VIEWER","enum":["COLLABORATOR","VIEWER"]}}},{"oneOf":[{"required":["user_id"],"type":"object","properties":{"user_id":{"type":"string","description":"The Zoom user ID.","example":"325bde9e82c84a179ac0f612f7688df7"}},"additionalProperties":false},{"required":["chat_channel_id"],"type":"object","properties":{"chat_channel_id":{"type":"string","description":"The chat channel ID.","example":"dc1731cf94a842bfb43e8b0fe13d2a46@conference.xmppdev.zoom.us"}},"additionalProperties":false}]}]}}}}}}},"responses":{"204":{"description":"Channel permissions updated successfully."},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n **Error Code:** `30661001` <br>\n Param is invalid <br>\n"},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n **Error Code:** `30661005` <br>\n Channel not found <br>\n"},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:write","video_mgmt_channels:write:admin","video_mgmt:update:permissions","video_mgmt:update:permissions:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:write","video_mgmt_channels:write:admin"],"x-granular-scopes":["video_mgmt:update:permissions","video_mgmt:update:permissions:admin"]}}},"/video_management/channels/{channelId}/playlists":{"get":{"tags":["Playlists"],"summary":"List channel playlists","description":"Retrieves the list of playlists for the channel. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:read`,`video_mgmt_channels:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:read:list_channel_playlists`,`video_mgmt:read:list_channel_playlists:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"ListChannelPlaylists","parameters":[{"name":"channelId","in":"path","description":"The channel ID","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}},{"name":"next_page_token","in":"query","description":"The next page token paginates through a set of large results. A next page token is returned whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}},{"name":"page_size","in":"query","description":"The number of records returned in a single API call. Max 300.","required":false,"schema":{"maximum":300,"type":"integer","example":30,"default":30}}],"responses":{"200":{"description":"List of playlists for the channel","content":{"application/json":{"schema":{"title":"List of playlists","type":"object","properties":{"total_records":{"type":"number","description":"The total number of records.","example":1},"next_page_token":{"type":"string","description":"The next page token.","example":"yqT59YnBSHqvDdNnkeHQsA"},"playlists":{"maxItems":300,"type":"array","description":"List of playlists for the channel.","items":{"title":"video","type":"object","properties":{"playlist_id":{"type":"string","description":"The playlist ID","example":"csduzfv3JwTeyR5QpC3PXw52"},"name":{"type":"string","description":"The name of the playlist.","example":"My Playlist1"}}}}}}}}},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:read","video_mgmt_channels:read:admin","video_mgmt:read:list_channel_playlists","video_mgmt:read:list_channel_playlists:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:read","video_mgmt_channels:read:admin"],"x-granular-scopes":["video_mgmt:read:list_channel_playlists","video_mgmt:read:list_channel_playlists:admin"]}},"post":{"tags":["Playlists"],"summary":"Add channel playlists ","description":"Adds playlists to the channel. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:write`,`video_mgmt_channels:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:write:channel_playlists`,`video_mgmt:write:channel_playlists:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"AddChannelPlaylists","parameters":[{"name":"channelId","in":"path","description":"The channel ID","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"requestBody":{"content":{"application/json":{"schema":{"required":["playlist_ids"],"type":"object","properties":{"playlist_ids":{"maxItems":100,"type":"array","description":"The playlist IDs.","items":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}}}}}},"responses":{"204":{"description":"Successfully added playlists to the channel."},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:write","video_mgmt_channels:write:admin","video_mgmt:write:channel_playlists","video_mgmt:write:channel_playlists:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:write","video_mgmt_channels:write:admin"],"x-granular-scopes":["video_mgmt:write:channel_playlists","video_mgmt:write:channel_playlists:admin"]}},"delete":{"tags":["Playlists"],"summary":"Delete channel playlists","description":"Removes playlists from the channel. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:write`,`video_mgmt_channels:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:delete:channel_playlists`,`video_mgmt:delete:channel_playlists:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"DeleteChannelPlaylists","parameters":[{"name":"channelId","in":"path","description":"The channel ID","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"requestBody":{"content":{"application/json":{"schema":{"required":["playlist_ids"],"type":"object","properties":{"playlist_ids":{"maxItems":100,"type":"array","description":"The playlist IDs.","items":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}}}}}},"responses":{"204":{"description":"Successfully removed playlists from the channel."},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:write","video_mgmt_channels:write:admin","video_mgmt:delete:channel_playlists","video_mgmt:delete:channel_playlists:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:write","video_mgmt_channels:write:admin"],"x-granular-scopes":["video_mgmt:delete:channel_playlists","video_mgmt:delete:channel_playlists:admin"]}}},"/video_management/playlists":{"get":{"tags":["Playlists"],"summary":"List playlists","description":"Retrieves the list of playlists for the user. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_playlists:read`,`video_mgmt_playlists:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:read:list_playlists`,`video_mgmt:read:list_playlists:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"ListPlaylists","parameters":[{"name":"next_page_token","in":"query","description":"The next page token paginates through a set of large results. A next page token is returned whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}},{"name":"page_size","in":"query","description":"The number of records returned in a single API call.","required":false,"schema":{"maximum":300,"type":"integer","example":30,"default":30}},{"name":"user_id","in":"query","description":"The user ID or email address of the playlist owner. It is used for an account-level [OAuth app](https://developers.zoom.us/docs/integrations/create/). Providing this parameter will return only the playlists owned by the specified user. Omit this for user-level apps.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}},{"name":"search_text","in":"query","description":"The text to search for playlists by name. A minimum of 3 characters is needed to search. Search is not case-sensitive.","required":true,"schema":{"type":"string","example":"john"}}],"responses":{"200":{"description":"List of playlists for the user","content":{"application/json":{"schema":{"title":"List of playlists","type":"object","properties":{"total_records":{"type":"number","description":"The total number of records.","example":1},"next_page_token":{"type":"string","description":"The next page token.","example":"yqT59YnBSHqvDdNnkeHQsA"},"playlists":{"maxItems":300,"type":"array","description":"List of playlists for the user.","items":{"title":"video","type":"object","properties":{"playlist_id":{"type":"string","description":"The playlist ID.","example":"csduzfv3JwTeyR5QpC3PXw52"},"name":{"type":"string","description":"The name of the playlist.","example":"My Playlist1"},"thumbnails":{"maxItems":1,"type":"array","description":"A list of thumbnail images associated with this playlist.","example":[{"file_url":"https://files.example.com/thumbnails/thumb123.jpg"}],"items":{"type":"object","properties":{"file_url":{"type":"string","description":"A public or pre-signed URL to download or view the thumbnail.","format":"uri","example":"https://files.example.com/thumbnails/thumb123.jpg"}}}}}}}}}}}},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_playlists:read","video_mgmt_playlists:read:admin","video_mgmt:read:list_playlists","video_mgmt:read:list_playlists:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_playlists:read","video_mgmt_playlists:read:admin"],"x-granular-scopes":["video_mgmt:read:list_playlists","video_mgmt:read:list_playlists:admin"]}},"post":{"tags":["Playlists"],"summary":"Create a playlist","description":"Creates a playlist for managing videos. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_playlists:write`,`video_mgmt_playlists:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:write:playlist`,`video_mgmt:write:playlist:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"createPlaylist","parameters":[{"name":"user_id","in":"query","description":"The user ID or email address of the on-behalf-of user who has the permission to create playlist. It is used for an account-level [OAuth app](https://developers.zoom.us/docs/integrations/create/). Omit this field for user-level apps.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}}],"requestBody":{"content":{"application/json":{"schema":{"title":"Playlist","required":["name"],"type":"object","properties":{"name":{"maxLength":200,"type":"string","description":"The name of the playlist.","example":"FoodieFlicks"},"thumbnails":{"maxItems":1,"type":"array","description":"Thumbnail metadata updates. Each entry references an uploaded file by `file_id`.","example":[{"file_id":"xBvggqyjQUal6TecwMlYwE123"}],"items":{"required":["file_id"],"type":"object","properties":{"file_id":{"type":"string","description":"The unique file reference ID from the file upload API.","example":"xBvggqyjQUal6TecwMlYwE123"}}}}}}}}},"responses":{"201":{"description":"**HTTP Status Code:** `201`  \n \n Playlist returned","content":{"application/json":{"schema":{"title":"Playlist","type":"object","properties":{"playlist_id":{"type":"string","description":"The playlist ID.","example":"iso9Dllddp39dagjLj9j"},"name":{"type":"string","description":"The name of the playlist.","example":"FoodieFlicks"}}}}}},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_playlists:write","video_mgmt_playlists:write:admin","video_mgmt:write:playlist","video_mgmt:write:playlist:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_playlists:write","video_mgmt_playlists:write:admin"],"x-granular-scopes":["video_mgmt:write:playlist","video_mgmt:write:playlist:admin"]}}},"/video_management/playlists/{playlistId}":{"delete":{"tags":["Playlists"],"summary":"Delete playlist","description":"Deletes a playlist. \n\n**Prerequisites**:\n* A Pro or higher account plan.\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_playlists:write`,`video_mgmt_playlists:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:delete:playlist`,`video_mgmt:delete:playlist:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"DeletePlaylist","parameters":[{"name":"playlistId","in":"path","description":"Playlist ID","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"responses":{"204":{"description":"Successfully deleted playlist"},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_playlists:write","video_mgmt_playlists:write:admin","video_mgmt:delete:playlist","video_mgmt:delete:playlist:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_playlists:write","video_mgmt_playlists:write:admin"],"x-granular-scopes":["video_mgmt:delete:playlist","video_mgmt:delete:playlist:admin"]}},"patch":{"tags":["Playlists"],"summary":"Update playlist","description":"Update playlist. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_playlists:write`,`video_mgmt_playlists:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:update:playlist`,`video_mgmt:update:playlist:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"UpdatePlaylist","parameters":[{"name":"playlistId","in":"path","description":"The ID of the playlist.","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"maxLength":200,"type":"string","description":"The name of the playlist.","example":"FoodieFlicks"},"thumbnails":{"maxItems":1,"type":"array","description":"The thumbnail metadata updates. Each entry references an uploaded file by `file_id`.","example":[{"file_id":"xBvggqyjQUal6TecwMlYwE123"}],"items":{"required":["file_id"],"type":"object","properties":{"file_id":{"type":"string","description":"The unique file reference ID from the file upload API.","example":"xBvggqyjQUal6TecwMlYwE123"}}}}}}}}},"responses":{"204":{"description":"Successfully updated playlist"},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_playlists:write","video_mgmt_playlists:write:admin","video_mgmt:update:playlist","video_mgmt:update:playlist:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_playlists:write","video_mgmt_playlists:write:admin"],"x-granular-scopes":["video_mgmt:update:playlist","video_mgmt:update:playlist:admin"]}}},"/video_management/channels/{channelId}/videos":{"get":{"tags":["Videos"],"summary":"List channel videos","description":"Gets a list of the channel's videos. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:read`,`video_mgmt_channels:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:read:list_channel_videos`,`video_mgmt:read:list_channel_videos:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"ListChannelVideos","parameters":[{"name":"channelId","in":"path","description":"The video channel ID.","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}},{"name":"next_page_token","in":"query","description":"Use this token to fetch the next page of results. Returns a `next_page_token` when the total number of results exceeds the current page size. Include this token in your next request to continue pagination. The token expires after 15 minutes.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}},{"name":"page_size","in":"query","description":"The number of records returned in a single API call.","required":false,"schema":{"maximum":300,"type":"integer","example":30,"default":30}}],"responses":{"200":{"description":"List of the channel's videos.","content":{"application/json":{"schema":{"title":"List of videos","type":"object","properties":{"total_records":{"type":"number","description":"The total number of records.","example":1},"next_page_token":{"type":"string","description":"Token to access the next page of results.","example":"yqT59YnBSHqvDdNnkeHQsA"},"videos":{"maxItems":300,"type":"array","description":"List of the channel's videos.","items":{"title":"video","type":"object","properties":{"video_id":{"type":"string","description":"The ID of the video.","example":"csduzfv3JwTeyR5QpC3PXw52"},"video_name":{"type":"string","description":"The name of the video.","example":"My Recording1"},"play_link":{"type":"string","description":"A link to play the video.","example":"https://abc/recording/unehd6TtTLuTN40owCOqqK"},"duration":{"type":"integer","description":"The duration of the video in milliseconds.","example":3000},"video_status":{"type":"string","description":"The status of the video: \n * `PROCESSING` = The video is currently being processed. \n * `COMPLETED` = The video has been processed successfully.","example":"COMPLETED","enum":["PROCESSING","COMPLETED"]},"video_source":{"type":"string","description":"The business domain or source of the video : \n * `ZOOM RECORDING` = The video is from Zoom recording. \n * `CLIPS` = The video is from Zoom clips.","example":"RECORDING","enum":["RECORDING","CLIPS"]}}}}}}}}},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:read","video_mgmt_channels:read:admin","video_mgmt:read:list_channel_videos","video_mgmt:read:list_channel_videos:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:read","video_mgmt_channels:read:admin"],"x-granular-scopes":["video_mgmt:read:list_channel_videos","video_mgmt:read:list_channel_videos:admin"]}},"post":{"tags":["Videos"],"summary":"Add channel videos","description":"Adds videos to the channel. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:write`,`video_mgmt_channels:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:write:channel_videos`,`video_mgmt:write:channel_videos:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"AddChannelVideos","parameters":[{"name":"channelId","in":"path","description":"The channel ID.","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"requestBody":{"content":{"application/json":{"schema":{"required":["videos"],"type":"object","properties":{"videos":{"maxItems":20,"type":"array","description":"The list of videos to add to the channel.","items":{"type":"object","oneOf":[{"required":["video_id"],"type":"object","properties":{"video_id":{"type":"string","description":"The video ID.","example":"csduzfv3JwTeyR5QpC3PXw52"}},"additionalProperties":false},{"required":["meeting_id"],"type":"object","properties":{"meeting_id":{"type":"string","description":"Zoom meeting ID. Add recording from a specific meeting.","example":"rec1zfv3JwTeyR5QpC3PXw52"}},"additionalProperties":false}]}}}}}}},"responses":{"204":{"description":"Successfully added channel videos."},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n **Error Code:** `30661005` <br>\n Channel not found. <br>\n"},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:write","video_mgmt_channels:write:admin","video_mgmt:write:channel_videos","video_mgmt:write:channel_videos:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:write","video_mgmt_channels:write:admin"],"x-granular-scopes":["video_mgmt:write:channel_videos","video_mgmt:write:channel_videos:admin"]}},"delete":{"tags":["Videos"],"summary":"Delete channel videos","description":"Removes videos from the channel. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_channels:write`,`video_mgmt_channels:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:delete:channel_videos`,`video_mgmt:delete:channel_videos:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"DeleteChannelVideos","parameters":[{"name":"channelId","in":"path","description":"The channel ID","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"requestBody":{"content":{"application/json":{"schema":{"required":["videos"],"type":"object","properties":{"videos":{"maxItems":20,"type":"array","description":"The list of videos to remove from the channel.","items":{"type":"object","oneOf":[{"required":["video_id"],"type":"object","properties":{"video_id":{"type":"string","description":"The video ID.","example":"csduzfv3JwTeyR5QpC3PXw52"}},"additionalProperties":false},{"required":["meeting_id"],"type":"object","properties":{"meeting_id":{"type":"string","description":"Zoom meeting ID. Remove the recording of a specific meeting.","example":"rec1zfv3JwTeyR5QpC3PXw52"}},"additionalProperties":false}]}}}}}}},"responses":{"204":{"description":"Successfully deleted channel videos."},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n **Error Code:** `30661005` <br>\n Channel not found. <br>\n"},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_channels:write","video_mgmt_channels:write:admin","video_mgmt:delete:channel_videos","video_mgmt:delete:channel_videos:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_channels:write","video_mgmt_channels:write:admin"],"x-granular-scopes":["video_mgmt:delete:channel_videos","video_mgmt:delete:channel_videos:admin"]}}},"/video_management/playlists/{playlistId}/videos":{"get":{"tags":["Videos"],"summary":"List playlist videos","description":"Gets the playlist's list of videos. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_playlists:read`,`video_mgmt_playlists:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:read:list_playlist_videos`,`video_mgmt:read:list_playlist_videos:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"ListPlaylistVideos","parameters":[{"name":"playlistId","in":"path","description":"The playlist ID.","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}},{"name":"next_page_token","in":"query","description":"Returned when the total results exceed the current page size. Include this token in your next request to fetch the next page of results. The token expires after 15 minutes.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}},{"name":"page_size","in":"query","description":"The number of records returned in a single API call.","required":false,"schema":{"maximum":300,"type":"integer","example":30,"default":30}}],"responses":{"200":{"description":"List of the playlist's videos.","content":{"application/json":{"schema":{"title":"List of videos","type":"object","properties":{"total_records":{"type":"number","description":"The total number of records.","example":1},"next_page_token":{"type":"string","description":"The token to return the next page of results.","example":"yqT59YnBSHqvDdNnkeHQsA"},"videos":{"maxItems":300,"type":"array","description":"List of the playlist's videos.","items":{"title":"video","type":"object","properties":{"video_id":{"type":"string","description":"The video ID.","example":"csduzfv3JwTeyR5QpC3PXw52"},"video_name":{"type":"string","description":"The video name.","example":"My Recording1"},"play_link":{"type":"string","description":"The URL to play the video.","example":"https://abc/recording/unehd6TtTLuTN40owCOqqK"},"duration":{"type":"integer","description":"The video duration in milliseconds.","example":3000},"video_status":{"type":"string","description":"The video status: \n * `PROCESSING` = Video is currently being processed. \n * `COMPLETED` = Video processing has finished successfully.","example":"COMPLETED","enum":["PROCESSING","COMPLETED"]},"video_source":{"type":"string","description":"The business domain or source of the video : \n * `ZOOM RECORDING` = The video is from Zoom recording. \n * `CLIPS` = The video is from Zoom clips.","example":"RECORDING","enum":["RECORDING","CLIPS"]}}}}}}}}},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_playlists:read","video_mgmt_playlists:read:admin","video_mgmt:read:list_playlist_videos","video_mgmt:read:list_playlist_videos:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_playlists:read","video_mgmt_playlists:read:admin"],"x-granular-scopes":["video_mgmt:read:list_playlist_videos","video_mgmt:read:list_playlist_videos:admin"]}},"post":{"tags":["Videos"],"summary":"Add playlist videos","description":"Adds videos to a playlist. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_playlists:write`,`video_mgmt_playlists:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:write:playlist_videos`,`video_mgmt:write:playlist_videos:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"AddPlaylistVideos","parameters":[{"name":"playlistId","in":"path","description":"The playlist ID.","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"requestBody":{"content":{"application/json":{"schema":{"required":["videos"],"type":"object","properties":{"videos":{"maxItems":20,"type":"array","description":"The list of videos to add to the playlist.","items":{"type":"object","oneOf":[{"required":["video_id"],"type":"object","properties":{"video_id":{"type":"string","description":"The video ID.","example":"csduzfv3JwTeyR5QpC3PXw52"}},"additionalProperties":false},{"required":["meeting_id"],"type":"object","properties":{"meeting_id":{"type":"string","description":"Zoom meeting ID. Use this to add the recording from a specific meeting.","example":"rec1zfv3JwTeyR5QpC3PXw52"}},"additionalProperties":false}]}}}}}}},"responses":{"204":{"description":"Successfully added playlist videos."},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_playlists:write","video_mgmt_playlists:write:admin","video_mgmt:write:playlist_videos","video_mgmt:write:playlist_videos:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_playlists:write","video_mgmt_playlists:write:admin"],"x-granular-scopes":["video_mgmt:write:playlist_videos","video_mgmt:write:playlist_videos:admin"]}},"delete":{"tags":["Videos"],"summary":"Delete playlist videos","description":"Deletes videos from a playlist. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_playlists:write`,`video_mgmt_playlists:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:delete:playlist_videos`,`video_mgmt:delete:playlist_videos:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"DeletePlaylistVideos","parameters":[{"name":"playlistId","in":"path","description":"The playlist ID.","required":true,"schema":{"type":"string","example":"csduzfv3JwTeyR5QpC3PXw52"}}],"requestBody":{"content":{"application/json":{"schema":{"required":["videos"],"type":"object","properties":{"videos":{"maxItems":20,"type":"array","description":"The list of videos to remove from the playlist.","items":{"type":"object","oneOf":[{"required":["video_id"],"type":"object","properties":{"video_id":{"type":"string","description":"The video ID.","example":"csduzfv3JwTeyR5QpC3PXw52"}},"additionalProperties":false},{"required":["meeting_id"],"type":"object","properties":{"meeting_id":{"type":"string","description":"Zoom meeting ID. Remove the recording from a specific meeting.","example":"rec1zfv3JwTeyR5QpC3PXw52"}},"additionalProperties":false}]}}}}}}},"responses":{"204":{"description":"Successfully deleted playlist videos."},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_playlists:write","video_mgmt_playlists:write:admin","video_mgmt:delete:playlist_videos","video_mgmt:delete:playlist_videos:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_playlists:write","video_mgmt_playlists:write:admin"],"x-granular-scopes":["video_mgmt:delete:playlist_videos","video_mgmt:delete:playlist_videos:admin"]}}},"/video_management/videos":{"get":{"tags":["Videos"],"summary":"List all videos","description":"Retrieves the list of videos or recordings added by the user. \n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_videos:read`,`video_mgmt_videos:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:read:list_videos`,`video_mgmt:read:list_videos:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"ListAllVideos","parameters":[{"name":"search_text","in":"query","description":"The text to use for search. A minimum of 3 characters is needed to search.","required":false,"schema":{"type":"string","example":"recording 1"}},{"name":"next_page_token","in":"query","description":"The next page token paginates through a set of large results. A next page token is returned whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}},{"name":"page_size","in":"query","description":"The number of records returned in a single API call.","required":false,"schema":{"maximum":300,"type":"integer","example":30,"default":30}},{"name":"user_id","in":"query","description":"The user ID or email address of the owner. It is used for an account-level [OAuth app](https://developers.zoom.us/docs/integrations/create/). Providing this parameter will return only the videos owned by the specified user. Omit this for user-level apps.","required":false,"schema":{"type":"string","example":"IAfJX3jsOLW7w3dokmFl84zOa0MAVGyMEB2"}}],"responses":{"200":{"description":"List of videos for the user","content":{"application/json":{"schema":{"title":"List of videos","type":"object","properties":{"total_records":{"type":"number","description":"The total number of records.","example":1},"next_page_token":{"type":"string","description":"The next page token.","example":"yqT59YnBSHqvDdNnkeHQsA"},"videos":{"maxItems":300,"type":"array","description":"List of videos.","items":{"title":"video","type":"object","properties":{"video_id":{"type":"string","description":"The ID of the video.","example":"csduzfv3JwTeyR5QpC3PXw52"},"video_name":{"type":"string","description":"The name of the video.","example":"My Recording1"},"description":{"maxLength":8000,"type":"string","description":"A detailed description or summary of the video content.","example":"Updated description text."},"external_id":{"maxLength":256,"type":"string","description":"Link the migrated media ID from an external system.","example":"legacy_vid_789"},"notes":{"maxLength":1000,"type":"string","description":"Additional information or notes about the video.","example":"This video contains onboarding information."},"play_link":{"type":"string","description":"A link to the video.","example":"https://abc/recording/unehd6TtTLuTN40owCOqqK"},"duration":{"type":"integer","description":"The duration of the video in milliseconds.","example":3000},"video_status":{"type":"string","description":"The status of the video: \n * `PROCESSING` = The video is currently being processed. \n * `COMPLETED` = The video has been processed successfully.","example":"COMPLETED","enum":["PROCESSING","COMPLETED"]},"video_source":{"type":"string","description":"The business domain or source of the video : \n * `ZOOM RECORDING` = The video is from Zoom recording. \n * `CLIPS` = The video is from Zoom clips.","example":"RECORDING","enum":["RECORDING","CLIPS"]},"owner_name":{"type":"string","description":"The name of the owner of the video.","example":"John Doe"},"owner_email":{"type":"string","description":"The email address of the owner of the video","example":"john.doe@xyz.com"},"created_time":{"type":"string","description":"The time the video was created in UTC format. The format will be `yyyy-MM-dd`T`HH:mm:ssZ`","format":"date-time","example":"2022-06-03T20:51:00Z"},"modified_time":{"type":"string","description":"The time the video was modified in UTC format. The format will be `yyyy-MM-dd`T`HH:mm:ssZ`","format":"date-time","example":"2022-06-03T20:51:00Z"}}}}}}}}},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_videos:read","video_mgmt_videos:read:admin","video_mgmt:read:list_videos","video_mgmt:read:list_videos:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_videos:read","video_mgmt_videos:read:admin"],"x-granular-scopes":["video_mgmt:read:list_videos","video_mgmt:read:list_videos:admin"]}}},"/video_management/videos/{videoId}/metadata":{"get":{"tags":["Videos"],"summary":"Get metadata for a specific video","description":"Retrieves metadata such as the name, description, and notes for a specific video.\n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_videos:read`,`video_mgmt_videos:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:read:video_metadata`,`video_mgmt:read:video_metadata:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"getVideoMetadata","parameters":[{"name":"videoId","in":"path","description":"The ID of the video. If the ID contains URL-reserved characters, double URL-encode the entire value before sending the request. For example, `F6/2jeddReCK+WUtDtxv3Q==_0003` becomes `F6%252F2jeddReCK%252BWUtDtxv3Q%253D%253D_0003`.","required":true,"schema":{"type":"string","example":"kNqLPC6hSFiZ9NpgjA549w"}}],"responses":{"200":{"description":"**HTTP Status Code:** `200` <br>\n OK\n\nVideo metadata retrieved successfully.","content":{"application/json":{"schema":{"type":"object","properties":{"video_name":{"maxLength":128,"type":"string","description":"The name of the video.","example":"My Recording1"},"description":{"maxLength":8000,"type":"string","description":"Detailed description or summary of the video content.","example":"Updated description text."},"external_id":{"maxLength":256,"type":"string","description":"Used to link the migrated media ID from an external system.","example":"legacy_vid_789"},"notes":{"maxLength":1000,"type":"string","description":"Additional information or notes about the video.","example":"This video contains onboarding information."},"play_link":{"type":"string","description":"A link to the video.","example":"https://abc/recording/unehd6TtTLuTN40owCOqqK"},"duration":{"type":"integer","description":"The duration of the video, in milliseconds.","example":3000},"video_status":{"type":"string","description":"The status of the video: \n * `PROCESSING` = The video is currently being processed. \n * `COMPLETED` = The video has been processed successfully.","example":"COMPLETED","enum":["PROCESSING","COMPLETED"]},"video_source":{"type":"string","description":"The business domain or source of the video: \n * `ZOOM RECORDING` = The video is from Zoom recording. \n * `CLIPS` = The video is from Zoom clips.","example":"RECORDING","enum":["RECORDING","CLIPS"]},"thumbnails":{"maxItems":1,"type":"array","description":"A list of thumbnail images associated with this video.","example":[{"file_url":"https://files.zoom.us/thumbnails/thumb123.jpg"}],"items":{"type":"object","properties":{"file_url":{"type":"string","description":"A public or pre-signed URL to download or view the thumbnail.","format":"uri","example":"https://files.zoom.us/thumbnails/thumb123.jpg"}}}},"owner_name":{"type":"string","description":"The name of the owner of the video.","example":"John Doe"},"owner_email":{"type":"string","description":"The email address of the owner of the video","example":"john.doe@xyz.com"},"created_time":{"type":"string","description":"The time the video was created in UTC format.\n\n The format will be `yyyy-MM-dd`T`HH:mm:ssZ`","format":"date-time","example":"2022-06-03T20:51:00Z"},"modified_time":{"type":"string","description":"The time the video was modified in UTC format. \n\nThe format will be `yyyy-MM-dd`T`HH:mm:ssZ`","format":"date-time","example":"2022-06-03T20:51:00Z"}}}}}},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_videos:read","video_mgmt_videos:read:admin","video_mgmt:read:video_metadata","video_mgmt:read:video_metadata:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_videos:read","video_mgmt_videos:read:admin"],"x-granular-scopes":["video_mgmt:read:video_metadata","video_mgmt:read:video_metadata:admin"]}},"patch":{"tags":["Videos"],"summary":"Update metadata for a specific video.","description":"Updates video metadata.\n\n**Prerequisites**:\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_videos:write`,`video_mgmt_videos:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:update:video_metadata`,`video_mgmt:update:video_metadata:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`","operationId":"updateVideoMetadata","parameters":[{"name":"videoId","in":"path","description":"The ID of the video. If the ID contains URL-reserved characters, double URL-encode the entire value before sending the request. For example, `F6/2jeddReCK+WUtDtxv3Q==_0003` becomes `F6%252F2jeddReCK%252BWUtDtxv3Q%253D%253D_0003`.","required":true,"schema":{"type":"string","example":"34uzfv3JwTeyR5QpC3PXwMg"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"video_name":{"maxLength":128,"type":"string","description":"The name of the video.","example":"My Recording1"},"description":{"maxLength":8000,"type":"string","description":"Detailed description or summary of the video content.","example":"Updated description text."},"external_id":{"maxLength":256,"type":"string","description":"Used to link the migrated media ID from an external system.","example":"legacy_vid_789"},"notes":{"maxLength":1000,"type":"string","description":"Additional information or notes about the video.","example":"This video contains onboarding information."},"thumbnails":{"maxItems":1,"type":"array","description":"Thumbnail metadata updates. Each entry references an uploaded file by `file_id`.","example":[{"file_id":"xBvggqyjQUal6TecwMlYwE123"}],"items":{"required":["file_id"],"type":"object","properties":{"file_id":{"type":"string","description":"The unique file reference ID from the file upload API.","example":"xBvggqyjQUal6TecwMlYwE123"}}}},"transcripts":{"type":"array","description":"Transcript updates. Each item references an uploaded transcript file and can include a language code. The `language` field is currently supported only for videos with the source `RECORDING`. For all other video source types, `language` is ignored, and the provided transcript file overwrites the existing transcript, if present.","example":[{"file_id":"xBvggqyjQUal6TecwMlYwE8","language":"en-US","is_default":true},{"file_id":"xBvggqyjQUal6TecwMlYwE7","language":"fr","is_default":false}],"items":{"required":["file_id"],"type":"object","properties":{"file_id":{"type":"string","description":"The unique file reference ID from the file upload API.","example":"xBvggqyjQUal6TecwMlYwE8"},"language":{"type":"string","description":"The language code (ISO 639-1 or BCP 47).","example":"en-US"},"is_default":{"type":"boolean","description":"Whether this transcript file is the default caption file. The default transcript is displayed first by the player. When the first transcript file is uploaded, it automatically becomes the default regardless of whether this field is explicitly set.","example":true}}}}},"additionalProperties":false,"description":"Metadata fields to update for the given video."}}}},"responses":{"204":{"description":"**HTTP Status Code:** `204`  \n \n Video metadata updated successfully."},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_videos:write","video_mgmt_videos:write:admin","video_mgmt:update:video_metadata","video_mgmt:update:video_metadata:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_videos:write","video_mgmt_videos:write:admin"],"x-granular-scopes":["video_mgmt:update:video_metadata","video_mgmt:update:video_metadata:admin"]}}},"/video_management/files":{"post":{"tags":["files"],"summary":"Upload file for video management","description":"Uploads a file to Zoom Video Management and returns a `file_id` that can be used in subsequent resource requests. Use this API to upload supporting assets such as thumbnail images and transcript files for channels, playlists, and videos. This API only stores the file. To associate the file with a channel, playlist, or video, call the corresponding create or update API and include the returned `file_id`. For example, to create a channel with a thumbnail image, first upload the image with this API, then include the returned `file_id` in the [Create Channel API](/docs/api/video-management/#tag/channels/post/video_management/channels).\n\n **Note:**  \n* Base URL: `https://fileapi.zoom.us/v2/`.   \n* Supported file formats: `.vtt`, `.jpeg/.jpg`, `.png`, `.gif`. \n* All files must be less than 2 GB.\n\n**Prerequisites:**\n* A [Pro or higher account plan](https://www.zoom.us/pricing?).\n* A Zoom Video Management license.\n\n\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt_file:write`,`video_mgmt_file:write:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `video_mgmt:write:file`,`video_mgmt:write:file:admin`","operationId":"uploadFileToVideoMgmt","requestBody":{"content":{"multipart/form-data":{"schema":{"required":["file"],"type":"object","properties":{"file":{"type":"string","description":"The upload file, in binary format. \n You can only send a maximum of 2 GB.","format":"binary","example":"Vm0wd2QyUXlVWGxWV0d4V..."}}}}}},"responses":{"201":{"description":"**HTTP Status Code:** `201`   \n \nFile successfully uploaded.","content":{"application/json":{"schema":{"type":"object","properties":{"file_id":{"type":"string","description":"The unique identifier for the uploaded file. This is a temporary ID, valid for 7 days from the time of upload. It is primarily used as a reference in other APIs, such as the Video Metadata API, where a `file_id` is required to associate files (for example, thumbnails and transcripts).","example":"xBvggqyjQUal6TecwMlYwE"}}}}}},"400":{"description":"**HTTP Status Code:** `400` <br>\n Bad Request  \n\n "},"401":{"description":"**HTTP Status Code:** `401` <br>\n Unauthorized  \n\n "},"403":{"description":"**HTTP Status Code:** `403` <br>\n Forbidden  \n\n "},"404":{"description":"**HTTP Status Code:** `404` <br>\n Not Found  Video not found \n\n "},"429":{"description":"**HTTP Status Code:** `429` <br>\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rate-limits/). \n\n "}},"security":[{"openapi_oauth":["video_mgmt_file:write","video_mgmt_file:write:admin","video_mgmt:write:file","video_mgmt:write:file:admin"],"openapi_authorization":[]}],"x-extensions":{"x-permissions":[],"x-macro-scopes":["video_mgmt_file:write","video_mgmt_file:write:admin"],"x-granular-scopes":["video_mgmt:write:file","video_mgmt:write:file:admin"]}}}},"components":{"securitySchemes":{"openapi_authorization":{"type":"apiKey","name":"Authorization","in":"header"},"openapi_oauth":{"type":"oauth2","flows":{"authorizationCode":{"authorizationUrl":"/","tokenUrl":"","refreshUrl":"","scopes":{"video_mgmt_channels:read":"video_mgmt_channels:read","video_mgmt_channels:read:admin":"video_mgmt_channels:read:admin","video_mgmt:read:list_channels":"video_mgmt:read:list_channels","video_mgmt:read:list_channels:admin":"video_mgmt:read:list_channels:admin","video_mgmt_channels:write":"video_mgmt_channels:write","video_mgmt_channels:write:admin":"video_mgmt_channels:write:admin","video_mgmt:write:channel":"video_mgmt:write:channel","video_mgmt:write:channel:admin":"video_mgmt:write:channel:admin","video_mgmt:read:channel":"video_mgmt:read:channel","video_mgmt:read:channel:admin":"video_mgmt:read:channel:admin","video_mgmt:update:channel":"video_mgmt:update:channel","video_mgmt:update:channel:admin":"video_mgmt:update:channel:admin","video_mgmt:delete:channel":"video_mgmt:delete:channel","video_mgmt:delete:channel:admin":"video_mgmt:delete:channel:admin","video_mgmt:read:list_permissions":"video_mgmt:read:list_permissions","video_mgmt:read:list_permissions:admin":"video_mgmt:read:list_permissions:admin","video_mgmt:update:permissions":"video_mgmt:update:permissions","video_mgmt:update:permissions:admin":"video_mgmt:update:permissions:admin","video_mgmt:delete:permissions":"video_mgmt:delete:permissions","video_mgmt:delete:permissions:admin":"video_mgmt:delete:permissions:admin","video_mgmt:write:permissions":"video_mgmt:write:permissions","video_mgmt:write:permissions:admin":"video_mgmt:write:permissions:admin","video_mgmt:read:list_channel_playlists":"video_mgmt:read:list_channel_playlists","video_mgmt:read:list_channel_playlists:admin":"video_mgmt:read:list_channel_playlists:admin","video_mgmt:delete:channel_playlists":"video_mgmt:delete:channel_playlists","video_mgmt:delete:channel_playlists:admin":"video_mgmt:delete:channel_playlists:admin","video_mgmt:write:channel_playlists":"video_mgmt:write:channel_playlists","video_mgmt:write:channel_playlists:admin":"video_mgmt:write:channel_playlists:admin","video_mgmt_playlists:read":"video_mgmt_playlists:read","video_mgmt_playlists:read:admin":"video_mgmt_playlists:read:admin","video_mgmt:read:list_playlists":"video_mgmt:read:list_playlists","video_mgmt:read:list_playlists:admin":"video_mgmt:read:list_playlists:admin","video_mgmt_playlists:write":"video_mgmt_playlists:write","video_mgmt_playlists:write:admin":"video_mgmt_playlists:write:admin","video_mgmt:write:playlist":"video_mgmt:write:playlist","video_mgmt:write:playlist:admin":"video_mgmt:write:playlist:admin","video_mgmt:delete:playlist":"video_mgmt:delete:playlist","video_mgmt:delete:playlist:admin":"video_mgmt:delete:playlist:admin","video_mgmt:update:playlist":"video_mgmt:update:playlist","video_mgmt:update:playlist:admin":"video_mgmt:update:playlist:admin","video_mgmt:delete:channel_videos":"video_mgmt:delete:channel_videos","video_mgmt:delete:channel_videos:admin":"video_mgmt:delete:channel_videos:admin","video_mgmt:read:list_channel_videos":"video_mgmt:read:list_channel_videos","video_mgmt:read:list_channel_videos:admin":"video_mgmt:read:list_channel_videos:admin","video_mgmt:write:channel_videos":"video_mgmt:write:channel_videos","video_mgmt:write:channel_videos:admin":"video_mgmt:write:channel_videos:admin","video_mgmt:read:list_playlist_videos":"video_mgmt:read:list_playlist_videos","video_mgmt:read:list_playlist_videos:admin":"video_mgmt:read:list_playlist_videos:admin","video_mgmt:write:playlist_videos":"video_mgmt:write:playlist_videos","video_mgmt:write:playlist_videos:admin":"video_mgmt:write:playlist_videos:admin","video_mgmt:delete:playlist_videos":"video_mgmt:delete:playlist_videos","video_mgmt:delete:playlist_videos:admin":"video_mgmt:delete:playlist_videos:admin","video_mgmt_videos:read":"video_mgmt_videos:read","video_mgmt_videos:read:admin":"video_mgmt_videos:read:admin","video_mgmt:read:list_videos":"video_mgmt:read:list_videos","video_mgmt:read:list_videos:admin":"video_mgmt:read:list_videos:admin","video_mgmt:read:video_metadata":"video_mgmt:read:video_metadata","video_mgmt:read:video_metadata:admin":"video_mgmt:read:video_metadata:admin","video_mgmt_videos:write":"video_mgmt_videos:write","video_mgmt_videos:write:admin":"video_mgmt_videos:write:admin","video_mgmt:update:video_metadata":"video_mgmt:update:video_metadata","video_mgmt:update:video_metadata:admin":"video_mgmt:update:video_metadata:admin","video_mgmt_file:write":"video_mgmt_file:write","video_mgmt_file:write:admin":"video_mgmt_file:write:admin","video_mgmt:write:file":"video_mgmt:write:file","video_mgmt:write:file:admin":"video_mgmt:write:file:admin"}}}}}}}