# Clips Master API - **OpenAPI Version:** `3.1.1` - **API Version:** `2` Clips APIs allow developers to interface with [Zoom Clips](https://developers.zoom.us/docs/zoom-clips/) features programmatically. Zoom Clips enables users to capture, manage, and share short video recordings, making it a valuable tool for collaboration, communication, and documentation. ## Servers - **URL:** `https://api.zoom.us/` ## Operations ### List all clips - **Method:** `GET` - **Path:** `/accounts/{accountId}/clips` - **Tags:** list subAccount clips in account Returns a list of clips of the current user or a list of all clips under the account. **Required scopes** `clips:read:list_user_clips:admin)` **Note** `user_id` can intake Zoom user ID or email, which only applies when `scope = clips:read:list_user_clips:admin` or `scope=clips:read:list_user_clips:master`. Otherwise, the `user_id` can only intake `me`. **[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `clips:read:master` **[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `clips:read:list_user_clips:master` **[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT` #### Parameters ##### `user_id` - **In:** `query` The email address or user ID of the clip owner. Providing this parameter will return only the clip owned by the specified user. If set to `me`, it returns the matched clips of current user. `string` ##### `search_key` - **In:** `query` The name of a clip. Providing this parameter enables the system to return only the matching clip. Otherwise, all clips will be returned. `string` ##### `date_filter_type` - **In:** `query` The clip date filter type. Enum: CREATED\_DATE - clip create date. MODIFIED\_DATE - clip modify date. `string`, possible values: `"CREATED_DATE", "MODIFIED_DATE"`, default: `"MODIFIED_DATE"` ##### `from` - **In:** `query` The queried start date and time in yyyy-MM-dd'T'HH:mm:ss'Z' UTC format for the created date range for which you would like to retrieve clips. The maximum range can be a month. If no value is provided for this field, the default will be current date. For example, if you make the API request on June 30, 2024, without providing the “from” and “to” parameters, by default the value of 'from' field will be “2024-06-30” and the value of the 'to' field will be “2024-07-01”. `string` ##### `to` - **In:** `query` The queried end date and time in yyyy-MM-dd'T'HH:mm:ss'Z' UTC format. `string` ##### `status` - **In:** `query` The status of the clips. Enum: RECORD\_START - clips init status RECORD\_FAILED - clips failed RECORD\_END - clips can play but can't download,no thumbnail and duration RECORD\_SUCCESS - clips can play and download RECORD\_DELETE - clips has been delete SUSPENDED - clips has been suspended `string`, possible values: `"RECORD_START", "RECORD_FAILED", "RECORD_END", "RECORD_SUCCESS", "RECORD_DELETE", "SUSPENDED"` ##### `page_size` - **In:** `query` The number of records returned within a single API call. `integer` ##### `next_page_token` - **In:** `query` The next page token paginates through large result sets. A next page token returns whenever the set of available results exceeds the current page size. This token's expiration period is 15 minutes. `string` ##### `accountId` required - **In:** `path` Unique identifier of the account. `string` #### Responses ##### Status: 200 Clips list returned. ###### Content-Type: application/json - **`data`** `array` — The list of clips. **Items:** - **`clip_id`** `string` — The clip's ID. - **`created_date`** `string` — The clip created date-time in UTC/GMT. Example: "2020-03-31T12:02:00Z" - **`description`** `string` — The description of the clip. - **`duration`** `number` — The duration of the clip, where the unit of duration is seconds. - **`file_size`** `integer` — The clip file size in bytes - **`modified_date`** `string` — The clip modified date-time in UTC/GMT. Example: "2020-03-31T12:02:00Z" - **`owner_id`** `string` — The owner's ID. - **`share_link`** `string` — The share link of the clip. - **`share_link_settings`** `object` — The access level, which indicates the access type of the current clips' share link. - **`enable_passcode`** `boolean` — Whether the passcode is enabled. - **`passcode`** `string` — The passcode. It exists only when \`enable\_passcode=true\` - **`share_scope`** `string`, possible values: `"ANYONE", "SAME_ORGANIZATON", "INVITED_MEMBERS_ONLY", "PRIVATE"` — ANYONE - Anyone with this clip link can watch it. SAME\_ORGANIZATON - Only users who are in the same organization as the clip owner can watch it. INVITED\_MEMBERS\_ONLY - Only invited users can watch it. PRIVATE - Only the clip's owner and account administrators can watch it. - **`status`** `string`, possible values: `"RECORD_START", "RECORD_FAILED", "RECORD_END", "RECORD_SUCCESS", "RECORD_DELETE", "SUSPENDED"` — The clip status. RECORD\_START - It means the clip recording has started but has not yet ended. RECORD\_FAILED - It means the clip recording failed. RECORD\_END - It means the clip recording has ended but the MP4 transcription is not yet complete. RECORD\_SUCCESS - It means the clip recording has reached its final state and is fully complete. RECORD\_DELETE - It means the clip has been soft deleted. SUSPENDED - It means the clip has been suspended by the trust & safety team. - **`tags`** `array` — The clip's tags **Items:** `string` — tag name - **`thumbnail_link`** `string` — The clip thumbnail link. - **`title`** `string` — The title of the clip. - **`next_page_token`** `string` — The next page token paginates through large result sets. A next page token returns whenever the set of available results exceeds the current page size. This token's expiration period is 15 minutes. - **`page_size`** `integer`, default: `30` — The number of records returned within a single API call. - **`total_records`** `number` — The total number of records found. **Example:** ```json { "data": [ { "title": "clips test title", "description": "just for test", "duration": 6000, "status": "RECORD_SUCCESS", "clip_id": "A2RldhYyU08zeDNIeFJJVzBOcHFRVlZQWXlRAQ", "owner_id": "pRof_6gpQP2YKDxmglRziA", "file_size": 639229, "share_link": "https://dev-integration.zoomdev.us/clips/share/A2RldhYyU08zeDNIeFJJVzBOcHFRVlZQWXlRAQ", "share_link_settings": { "passcode": "Dmpy*xy7", "share_scope": "ANYONE", "enable_passcode": true }, "thumbnail_link": "https://file.zoomdev.us/file/2SO3x3HxRIW0NpqQVVPYyQ?attachType=preview&filename=2SO3x3HxRIW0NpqQVVPYyQ.jpg&jwt=eyJhbGciOiJFUzI1NiIsImsiOiJLSzQxYXo3LyJ9.eyJpc3MiOiJmaWxlIiwiYXVkIjoiemZzIiwiaWljIjoiZGV2IiwiaWF0IjoxNzMwNDM4OTE2LCJvcmkiOiJtYXJ2ZWwiLCJkaWciOiI5NDhhMjIxYjU2ZTFhOWM1YTMyOTE0ODdlNjFmMGU1YjA2NzkzNTM3NTY5NDRhZWVjNzcyYmU3OTQ3ZWQ3ZTAwIiwiZXhwIjoxNzMwNDQ2MTE2LCJoZGlnIjpmYWxzZX0.Lgk1SRRKsxrxWN6F9Y9aZgfqXCSZ1mJg-UsunpVCMuRMYUR1Sf-gGn1_2_Fc1gFexkBKr0C50jT7Vo1_1YQUlQ&subType=552x310", "created_date": "2024-10-11T01:51:50.631+00:00", "modified_date": "2024-10-31T10:06:08.460+00:00", "tags": [ "testTag" ] } ], "next_page_token": "R4aF9Oj0fVM2hhezJTEmSKaBSkfesDwGy42", "page_size": 30, "total_records": 30 } ``` ##### Status: 400 \*\*HTTP Status Code:\*\* \`400\` \
Bad Request \*\*Error Code:\*\* \`300\` \
Pagination Error \
##### Status: 401 \*\*HTTP Status Code:\*\* \`401\` \
Unauthorized \*\*Error Code:\*\* \`1002\` \
No authenticated \
##### Status: 403 \*\*HTTP Status Code:\*\* \`403\` \
Forbidden \*\*Error Code:\*\* \`1003\` \
No permission to operate \
##### Status: 429 \*\*HTTP Status Code:\*\* \`429\` \
Too Many Requests. For more information, see \[rate limits]\(https\://developers.zoom.us/docs/api/rest/rate-limits/).