Vimeo

Video hosting and streaming platform

developer.vimeo.com/api ↗
Version
3.4
OpenAPI
3.0.2
Endpoints
486
Schemas
331
87
Quality
Updated
3 days ago
Video video streaming hosting
Use this API in your AI agent

Query structured spec data via REST or MCP. Get exactly what your agent needs.

Get API Key

Server URLs

https://api.vimeo.com

Endpoints

Clear filters

Apiinformation\essentials 1 endpoints

GET /

This method returns the full OpenAPI specification for the Vimeo API.

operationId: get_endpoints

Parameters

Name In Required Type Description
openapi query optional boolean

Return an OpenAPI specification.

version query optional string

Return an OpenAPI specification for the specified API version. This overwrites the version field provided in the Accept header.

Responses

200

Standard request.

GET /

Authenticationextras\essentials 1 endpoints

GET /oauth/verify

This method verifies that an OAuth 2 access token exists.

operationId: verify_token

Responses

200

The token was verified.

401

The token isn’t a valid OAuth 2 token.

GET /oauth/verify

Categories\channels 1 endpoints

GET /categories/{category}/channels

This method returns every channel that belongs to the specified category.

operationId: CategoriesChannels_listInCategory

Parameters

Name In Required Type Description
category path required string

The name of the category.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • followers - Sort the results by number of followers.
  • videos - Sort the results by number of videos.

Responses

200

The channels were returned.

404

No such category exists.

GET /categories/{category}/channels

Categories\essentials 2 endpoints

GET /categories

This method returns every available category.

operationId: get_categories

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Responses

200

The categories were returned.

GET /categories
GET /categories/{category}

This method returns the specified category.

operationId: get_category

Parameters

Name In Required Type Description
category path required string

The name of the category.

Responses

200

The category was returned.

404

No such category exists.

GET /categories/{category}

Categories\groups 1 endpoints

GET /categories/{category}/groups

This method returns every group that belongs to the specified category.

operationId: CategoriesGroups_getAllGroups

Parameters

Name In Required Type Description
category path required string

The name of the category.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • members - Sort the results by number of members.
  • videos - Sort the results by number of videos.

Responses

200

The groups were returned.

404

No such category exists.

GET /categories/{category}/groups

Categories\users 4 endpoints

GET /me/categories

This method returns every category that the authenticated user follows.

operationId: CategoriesUsers_listFollowedCategories

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • name - Sort the results by name.

Responses

200

The categories were returned.

403

Error code 3200: Only the authenticated user can access this information.

GET /me/categories
GET /me/categories/{category}

This method determines whether the authenticated user follows the specified category.

operationId: CategoriesUsers_checkFollowedCategory

Parameters

Name In Required Type Description
category path required string

The name of the category.

Responses

204

The user is following the category.

GET /me/categories/{category}
GET /users/{user_id}/categories

This method returns every category that the authenticated user follows.

operationId: CategoriesUsers_listFollowedCategories

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • name - Sort the results by name.

Responses

200

The categories were returned.

403

Error code 3200: Only the authenticated user can access this information.

GET /users/{user_id}/categories
GET /users/{user_id}/categories/{category}

This method determines whether the authenticated user follows the specified category.

operationId: CategoriesUsers_checkFollowedCategory

Parameters

Name In Required Type Description
category path required string

The name of the category.

user_id path required number

The ID of the user.

Responses

204

The user is following the category.

GET /users/{user_id}/categories/{category}

Categories\videos 3 endpoints

GET /categories/{category}/videos

This method returns every video that belongs to the specified category.

operationId: CategoriesVideos_listVideosInCategory

Parameters

Name In Required Type Description
category path required string

The name of the category.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • conditional_featured - Return featured videos.
  • embeddable - Return embeddable videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by date.
  • duration - Sort the results by duration.
  • featured - Sort the results by featured status.
  • likes - Sort the results by number of likes.
  • plays - Sort the results by number of plays.
  • relevant - Sort the results by relevance.

Responses

200

The videos were returned.

404

No such category exists.

GET /categories/{category}/videos
GET /categories/{category}/videos/{video_id}

This method returns a single video in the specified category. You can use this method to determine whether the video belongs to the category.

operationId: CategoriesVideos_getVideoInCategory

Parameters

Name In Required Type Description
category path required string

The name of the category.

video_id path required number

The ID of the video.

Responses

200

The video was returned.

404

No such category exists, or the video doesn’t belong to it.

GET /categories/{category}/videos/{video_id}
GET /videos/{video_id}/categories

This method returns every category that contains the specified video.

operationId: CategoriesVideos_getAllVideoCategories

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The categories were returned.

404

No such video exists.

GET /videos/{video_id}/categories

Channels\categories 1 endpoints

GET /channels/{channel_id}/categories

This method returns every category to which the specified channel belongs.

operationId: ChannelsCategories_getBelongingCategories

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

Responses

200

The categories were returned.

404

No such channel exists.

GET /channels/{channel_id}/categories

Channels\essentials 4 endpoints

GET /channels

This method returns all available channels.

operationId: get_channels

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • featured - Return featured channels.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by creation date.
  • default - Sort the results by creation date.
  • followers - Sort the results by number of followers.
  • relevant - Sort the results by relevance. This option is available for search queries only.
  • videos - Sort the results by number of videos.

Responses

200

The channels were returned.

400

The relevant sort has no search query.

GET /channels
GET /channels/{channel_id}

This method returns a single channel.

operationId: get_channel

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

Responses

200

The channel was returned.

GET /channels/{channel_id}
GET /me/channels

This method returns all the channels to which the specified user subscribes.

operationId: ChannelsEssentials_getUserSubscriptions

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • moderated - Return moderated channels.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by creation date.
  • followers - Sort the results by number of followers.
  • videos - Sort the results by number of videos.

Responses

200

The channels were returned.

304

No channel has been followed since the given If-Modified-Since header.

GET /me/channels
GET /users/{user_id}/channels

This method returns all the channels to which the specified user subscribes.

operationId: ChannelsEssentials_getUserSubscriptions

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • moderated - Return moderated channels.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by creation date.
  • followers - Sort the results by number of followers.
  • videos - Sort the results by number of videos.

Responses

200

The channels were returned.

304

No channel has been followed since the given If-Modified-Since header.

GET /users/{user_id}/channels

Channels\moderators 2 endpoints

GET /channels/{channel_id}/moderators

This method returns every moderator of the specified channel.

operationId: ChannelsModerators_listByChannel

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date added.

Responses

200

The moderators were returned.

GET /channels/{channel_id}/moderators
GET /channels/{channel_id}/moderators/{user_id}

This method returns a single moderator of the specified channel.

operationId: ChannelsModerators_getSpecificModerator

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

user_id path required number

The ID of the user.

Responses

200

The moderator was returned.

GET /channels/{channel_id}/moderators/{user_id}

Channels\privatechannelmembers 1 endpoints

GET /channels/{channel_id}/privacy/users

This method returns all the users who have access to the specified private channel. The authenticated user must be the owner of the channel.

operationId: ChannelsPrivateChannelMembers_getAccessibleUsers

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The users were returned.

401

Error code 8003: The user credentials are invalid.

403

Error code 3200: The authenticated user doesn’t own this channel.

GET /channels/{channel_id}/privacy/users

Channels\subscriptionsandsubscribers 3 endpoints

GET /channels/{channel_id}/users

This method returns every follower of the specified channel.

operationId: ChannelsSubscriptionsAndSubscribers_listChannelFollowers

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query required string

The attribute by which to filter the results.

Option descriptions:

  • moderators - Return moderators.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by follow date.

Responses

200

The followers were returned.

404

No such channel exists.

GET /channels/{channel_id}/users
GET /me/channels/{channel_id}

This method determines whether the specified user is a follower of a particular channel.

operationId: ChannelsSubscriptionsAndSubscribers_checkIfUserFollowsChannel

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

Responses

204

The user follows the channel.

404

No such channel exists.

GET /me/channels/{channel_id}
GET /users/{user_id}/channels/{channel_id}

This method determines whether the specified user is a follower of a particular channel.

operationId: ChannelsSubscriptionsAndSubscribers_checkUserFollowsChannel

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

user_id path required number

The ID of the user.

Responses

204

The user follows the channel.

404

No such channel exists.

GET /users/{user_id}/channels/{channel_id}

Channels\tags 2 endpoints

GET /channels/{channel_id}/tags

This method returns every tag that has been added to the specified channel.

operationId: ChannelsTags_getAllChannelTags

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

Responses

200

The tags were returned.

400

No such channel exists.

GET /channels/{channel_id}/tags
GET /channels/{channel_id}/tags/{word}

This method determines whether a tag has been added to the specified channel.

operationId: ChannelsTags_checkIfTagAddedToChannel

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

word path required string

The word to use as the tag.

Responses

204

The tag has been added to the channel.

400

No such tag exists.

404

Error code 5000: The tag exists, but the channel isn’t tagged by it.

GET /channels/{channel_id}/tags/{word}

Channels\videos 3 endpoints

GET /channels/{channel_id}/videos

This method returns every video in the specified channel.

operationId: ChannelsVideos_listInChannel

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

containing_uri query optional string

The page that contains the video URI.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • added - Sort the results by date added.
  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by creation date.
  • default - Use the default sorting method.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • manual - Sort the results as the user has arranged them.
  • modified_time - Sort the results by last modification.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

304

No videos have been added to this channel since the given If-Modified-Since header.

400

The sort field is default, but the direction field has a value.

404

No such channel exists.

GET /channels/{channel_id}/videos
GET /channels/{channel_id}/videos/{video_id}

This method returns a single video in the specified channel. You can use it to determine whether the video is in the channel.

operationId: ChannelsVideos_getSpecificVideoInChannel

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

Responses

200

The video was returned.

404

No such channel exists.

GET /channels/{channel_id}/videos/{video_id}
GET /videos/{video_id}/available_channels

This method returns every channel to which the authenticated user can add or remove the specified video. The authenticated user must be a moderator of the channel.

operationId: ChannelsVideos_getAccessibleChannels

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The channels were returned.

403

The authenticated user can’t add or remove this video from a channel.

404

The authenticated user isn’t a moderator of the channel.

GET /videos/{video_id}/available_channels

Embedpresets\customlogos 4 endpoints

GET /me/customlogos

This method returns every custom logo that belongs to the authenticated user or team owner.

operationId: EmbedPresetsCustomLogos_list

Responses

200

The custom logos were returned.

403

The authenticated user can’t access the custom logos.

GET /me/customlogos
GET /me/customlogos/{logo_id}

This method returns a single custom logo belonging to the authenticated user.

operationId: EmbedPresetsCustomLogos_getSpecificUserLogo

Parameters

Name In Required Type Description
logo_id path required number

The ID of the custom logo.

Responses

200

The custom logo was returned.

403

The authenticated user can’t access the custom logo.

GET /me/customlogos/{logo_id}
GET /users/{user_id}/customlogos

This method returns every custom logo that belongs to the authenticated user or team owner.

operationId: EmbedPresetsCustomLogos_listUserLogos

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

Responses

200

The custom logos were returned.

403

The authenticated user can’t access the custom logos.

GET /users/{user_id}/customlogos
GET /users/{user_id}/customlogos/{logo_id}

This method returns a single custom logo belonging to the authenticated user.

operationId: EmbedPresetsCustomLogos_getSpecificUserLogo

Parameters

Name In Required Type Description
logo_id path required number

The ID of the custom logo.

user_id path required number

The ID of the user.

Responses

200

The custom logo was returned.

403

The authenticated user can’t access the custom logo.

GET /users/{user_id}/customlogos/{logo_id}

Embedpresets\essentials 4 endpoints

GET /me/presets

This method returns every embed preset that belongs to the authenticated user.

operationId: EmbedPresetsEssentials_getAllUserCreatedEmbedPresets

Parameters

Name In Required Type Description
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The embed presets were returned.

GET /me/presets
GET /me/presets/{preset_id}

This method returns a single embed preset. The authenticated user must be the owner of the preset.

operationId: EmbedPresetsEssentials_getSpecificPreset

Parameters

Name In Required Type Description
preset_id path required number

The ID of the preset.

Responses

200

The embed preset was returned.

GET /me/presets/{preset_id}
GET /users/{user_id}/presets

This method returns every embed preset that belongs to the authenticated user.

operationId: EmbedPresetsEssentials_getUserEmbedPresets

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The embed presets were returned.

GET /users/{user_id}/presets
GET /users/{user_id}/presets/{preset_id}

This method returns a single embed preset. The authenticated user must be the owner of the preset.

operationId: EmbedPresetsEssentials_getSpecificEmbedPreset

Parameters

Name In Required Type Description
preset_id path required number

The ID of the preset.

user_id path required number

The ID of the user.

Responses

200

The embed preset was returned.

GET /users/{user_id}/presets/{preset_id}

Embedpresets\timelineevents 1 endpoints

GET /videos/{video_id}/timelinethumbnails/{thumbnail_id}

This method returns a single timeline event thumbnail that belongs to the specified video.

operationId: EmbedPresetsTimelineEvents_getSingleThumbnail

Parameters

Name In Required Type Description
thumbnail_id path required number

The ID of the timeline event thumbnail.

video_id path required number

The ID of the video.

Responses

200

The timeline event thumbnail was returned.

403

The authenticated user can’t access the timeline event thumbnail.

GET /videos/{video_id}/timelinethumbnails/{thumbnail_id}

Embedpresets\videos 3 endpoints

GET /me/presets/{preset_id}/videos

This method returns every video to which the specified embed preset has been added. The authenticated user must be the owner of videos.

operationId: EmbedPresetsVideos_getSpecificPresetVideos

Parameters

Name In Required Type Description
preset_id path required number

The ID of the embed preset.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The videos were returned.

GET /me/presets/{preset_id}/videos
GET /users/{user_id}/presets/{preset_id}/videos

This method returns every video to which the specified embed preset has been added. The authenticated user must be the owner of videos.

operationId: EmbedPresetsVideos_getPresetVideos

Parameters

Name In Required Type Description
preset_id path required number

The ID of the embed preset.

user_id path required number

The ID of the user.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The videos were returned.

GET /users/{user_id}/presets/{preset_id}/videos
GET /videos/{video_id}/presets/{preset_id}

This method determines whether a video has the specified embed preset.

operationId: EmbedPresetsVideos_checkIfPresetAddedToVideo

Parameters

Name In Required Type Description
preset_id path required number

The ID of the embed preset.

video_id path required number

The ID of the video.

Responses

204

The embed preset has been added to the video.

404

No such video or embed preset exists.

GET /videos/{video_id}/presets/{preset_id}

Folders\essentials 5 endpoints

GET /me/projects

This method returns all the folders belonging to the authenticated user.

operationId: FoldersEssentials_getAllUserFolders

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • date - Sort the results by date.
  • default - Use the default sort order.
  • modified_time - Sort the results by last modification.
  • name - Sort the results by name.
  • pinned_on - Sort the results by pinned timestamp.

Responses

200

The folders were returned.

401

Error code 8000: The user credentials are invalid.

GET /me/projects
GET /me/projects/{project_id}

This method returns a single folder belonging to the authenticated user.

operationId: FoldersEssentials_getSpecificFolder

Parameters

Name In Required Type Description
project_id path required number

The ID of the folder.

Responses

200

The folder was returned.

401

Error code 8000: The user credentials are invalid.

404

Error code 5000: No such folder exists.

GET /me/projects/{project_id}
GET /users/{owner_id}/folders/private_to_me

This method returns the specified private-to-me folder.

operationId: FoldersEssentials_getUserPrivateToMeFolder

Parameters

Name In Required Type Description
owner_id path required number

The ID of the owner.

Responses

200

The folder was returned.

401

Error code 8000: The user credentials are invalid.

404

Error code 5000: No such folder exists.

GET /users/{owner_id}/folders/private_to_me
GET /users/{user_id}/projects

This method returns all the folders belonging to the authenticated user.

operationId: get_projects

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • date - Sort the results by date.
  • default - Use the default sort order.
  • modified_time - Sort the results by last modification.
  • name - Sort the results by name.
  • pinned_on - Sort the results by pinned timestamp.

Responses

200

The folders were returned.

401

Error code 8000: The user credentials are invalid.

GET /users/{user_id}/projects
GET /users/{user_id}/projects/{project_id}

This method returns a single folder belonging to the authenticated user.

operationId: get_project

Parameters

Name In Required Type Description
project_id path required number

The ID of the folder.

user_id path required number

The ID of the user.

Responses

200

The folder was returned.

401

Error code 8000: The user credentials are invalid.

404

Error code 5000: No such folder exists.

GET /users/{user_id}/projects/{project_id}

Folders\items 2 endpoints

GET /me/projects/{project_id}/items

This method returns every item that belongs to the specified folder.

operationId: FoldersItems_getFolderItems

Parameters

Name In Required Type Description
project_id path required number

The ID of the folder.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • folder - Filter the results by folder.
  • live_event - Filter the results by event.
  • video - Filter the results by video.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • default - Use the default sort order.
  • duration - Sort the results by duration. Items without a duration, namely events and folders, are grouped by type in ascending alphabetical order, with events first.
  • last_user_action_event_date - Sort the results by the date of the last user action.

Responses

200

OK

GET /me/projects/{project_id}/items
GET /users/{user_id}/projects/{project_id}/items

This method returns every item that belongs to the specified folder.

operationId: FoldersItems_getFolderContents

Parameters

Name In Required Type Description
project_id path required number

The ID of the folder.

user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • folder - Filter the results by folder.
  • live_event - Filter the results by event.
  • video - Filter the results by video.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • default - Use the default sort order.
  • duration - Sort the results by duration. Items without a duration, namely events and folders, are grouped by type in ascending alphabetical order, with events first.
  • last_user_action_event_date - Sort the results by the date of the last user action.

Responses

200

OK

GET /users/{user_id}/projects/{project_id}/items

Folders\videos 2 endpoints

GET /me/projects/{project_id}/videos

This method returns all the videos that belong to the specified folder.

operationId: FoldersVideos_getVideosInFolder

Parameters

Name In Required Type Description
project_id path required number

The ID of the folder.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter_tag query optional string

A comma-separated list of tags to filter on. All results must include at least one of these tags. The use of this parameter triggers a search.

filter_tag_all_of query optional string

A comma-separated list of tags to filter on. All results must include all of these tags. The use of this parameter triggers a search.

filter_tag_exclude query optional string

A comma-separated list of tags to exclude. The use of this parameter triggers a search.

include_subfolders query optional boolean

Whether to include subfolders.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

query_fields query optional string

A comma-separated list of fields to query over. The default value is title,description,chapters,tags.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • default - Use the default sort order.
  • duration - Sort the results by duration.
  • last_user_action_event_date - Sort the results by the date of the last user action.

Responses

200

The videos were returned.

401

Error code 8000: The user credentials are invalid.

404

Error code 5000: No such folder exists.

GET /me/projects/{project_id}/videos
GET /users/{user_id}/projects/{project_id}/videos

This method returns all the videos that belong to the specified folder.

operationId: FoldersVideos_getAllFolderVideos

Parameters

Name In Required Type Description
project_id path required number

The ID of the folder.

user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter_tag query optional string

A comma-separated list of tags to filter on. All results must include at least one of these tags. The use of this parameter triggers a search.

filter_tag_all_of query optional string

A comma-separated list of tags to filter on. All results must include all of these tags. The use of this parameter triggers a search.

filter_tag_exclude query optional string

A comma-separated list of tags to exclude. The use of this parameter triggers a search.

include_subfolders query optional boolean

Whether to include subfolders.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

query_fields query optional string

A comma-separated list of fields to query over. The default value is title,description,chapters,tags.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • default - Use the default sort order.
  • duration - Sort the results by duration.
  • last_user_action_event_date - Sort the results by the date of the last user action.

Responses

200

The videos were returned.

401

Error code 8000: The user credentials are invalid.

404

Error code 5000: No such folder exists.

GET /users/{user_id}/projects/{project_id}/videos

Groups\essentials 2 endpoints

GET /groups

This method returns every available group.

operationId: get_groups

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • featured - Return featured groups.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by creation date.
  • followers - Sort the results by number of followers.
  • relevant - Sort the results by relevance. This option is available for search queries only.
  • videos - Sort the results by number of videos.

Responses

200

The groups were returned.

GET /groups
GET /groups/{group_id}

This method returns the specified group.

operationId: get_group

Parameters

Name In Required Type Description
group_id path required number

The ID of the group.

Responses

200

The group was returned.

GET /groups/{group_id}

Groups\users 5 endpoints

GET /groups/{group_id}/users

This method returns every user who belongs to the specified group.

operationId: GroupsUsers_getGroupUsers

Parameters

Name In Required Type Description
group_id path required number

The ID of the group.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • moderators - Return group moderators.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by creation date.

Responses

200

The members were returned.

404

No such group exists.

GET /groups/{group_id}/users
GET /me/groups

This method returns every group to which the authenticated user belongs.

operationId: GroupsUsers_getUserGroups

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • moderated - Return moderated groups.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by creation date.
  • members - Sort the results by number of members.
  • videos - Sort the results by number of videos.

Responses

200

The groups were returned.

GET /me/groups
GET /me/groups/{group_id}

This method determines whether the authenticated user belongs to the specified group.

operationId: GroupsUsers_checkUserJoinedGroup

Parameters

Name In Required Type Description
group_id path required number

The ID of the group.

Responses

204

The user belongs to the group.

404
  • No such group exists.
  • The authenticated user isn’t a member of the group.
GET /me/groups/{group_id}
GET /users/{user_id}/groups

This method returns every group to which the authenticated user belongs.

operationId: GroupsUsers_getUserGroupsList

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • moderated - Return moderated groups.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by creation date.
  • members - Sort the results by number of members.
  • videos - Sort the results by number of videos.

Responses

200

The groups were returned.

GET /users/{user_id}/groups
GET /users/{user_id}/groups/{group_id}

This method determines whether the authenticated user belongs to the specified group.

operationId: GroupsUsers_checkBelongGroup

Parameters

Name In Required Type Description
group_id path required number

The ID of the group.

user_id path required number

The ID of the user.

Responses

204

The user belongs to the group.

404
  • No such group exists.
  • The authenticated user isn’t a member of the group.
GET /users/{user_id}/groups/{group_id}

Groups\videos 2 endpoints

GET /groups/{group_id}/videos

This method returns every video from the specified group.

operationId: GroupsVideos_getAllGroupVideos

Parameters

Name In Required Type Description
group_id path required number

The ID of the group.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by creation date.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

304

No videos have been added to the group since the given If-Modified-Since header.

404

No such group exists.

GET /groups/{group_id}/videos
GET /groups/{group_id}/videos/{video_id}

This method returns a single video from the specified group. You can use this method to determine whether the video belongs to the group.

operationId: GroupsVideos_getSingleVideo

Parameters

Name In Required Type Description
group_id path required number

The ID of the group.

video_id path required number

The ID of the video.

Responses

200

The video was returned.

404

No such video or group exists.

GET /groups/{group_id}/videos/{video_id}

Likes\essentials 7 endpoints

GET /channels/{channel_id}/videos/{video_id}/likes

This method returns every user who has liked the specified video.

operationId: LikesEssentials_getUsersWhoLikedVideo

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by join date.

Responses

200

The users were returned.

GET /channels/{channel_id}/videos/{video_id}/likes
GET /me/likes

This method returns every video that the authenticated user has liked.

operationId: LikesEssentials_getUserLikedVideos

Parameters

Name In Required Type Description
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by creation date.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

GET /me/likes
GET /me/likes/{video_id}

This method checks if the authenticated user has liked the specified video.

operationId: LikesEssentials_checkUserLikedVideo

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

204

The user has liked the video.

404

The user hasn’t liked the video.

GET /me/likes/{video_id}
GET /ondemand/pages/{ondemand_id}/likes

This method returns every user who has liked the specified video on an On Demand page.

operationId: LikesEssentials_getAllUserLikes

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • extra - Consider extra content only.
  • main - Consider main content only.
  • trailer - Consider trailer content only.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by join date.

Responses

200

The users were returned.

GET /ondemand/pages/{ondemand_id}/likes
GET /users/{user_id}/likes

This method returns every video that the authenticated user has liked.

operationId: get_likes

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by creation date.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

GET /users/{user_id}/likes
GET /users/{user_id}/likes/{video_id}

This method checks if the authenticated user has liked the specified video.

operationId: LikesEssentials_checkVideoLikedByUser

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

video_id path required number

The ID of the video.

Responses

204

The user has liked the video.

404

The user hasn’t liked the video.

GET /users/{user_id}/likes/{video_id}
GET /videos/{video_id}/likes

This method returns every user who has liked the specified video.

operationId: LikesEssentials_getUserLikes

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by join date.

Responses

200

The users were returned.

GET /videos/{video_id}/likes

Live\embedprivacy 3 endpoints

GET /live_events/{live_event_id}/privacy/domains

This method returns every whitelisted domain for an event. The embed privacy setting must be whitelist.

operationId: LiveEmbedPrivacy_getWhitelistDomains

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

Responses

200

The whitelisted domains for the event were returned.

400

Error code 2518: The embed permission isn’t whitelist.

403

Error code 3200: The authenticated user can’t get domains for the event.

404

Error code 5000: No such event exists.

500

Error code 4016: An unexpected error occurred.

GET /live_events/{live_event_id}/privacy/domains
GET /me/live_events/{live_event_id}/privacy/domains

This method returns every whitelisted domain for an event. The embed privacy setting must be whitelist.

operationId: LiveEmbedPrivacy_getWhitelistDomains

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

Responses

200

The whitelisted domains for the event were returned.

400

Error code 2518: The embed permission isn’t whitelist.

403

Error code 3200: The authenticated user can’t get domains for the event.

404

Error code 5000: No such event exists.

500

Error code 4016: An unexpected error occurred.

GET /me/live_events/{live_event_id}/privacy/domains
GET /users/{user_id}/live_events/{live_event_id}/privacy/domains

This method returns every whitelisted domain for an event. The embed privacy setting must be whitelist.

operationId: LiveEmbedPrivacy_getWhitelistDomains

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

user_id path required number

The ID of the user.

Responses

200

The whitelisted domains for the event were returned.

400

Error code 2518: The embed permission isn’t whitelist.

403

Error code 3200: The authenticated user can’t get domains for the event.

404

Error code 5000: No such event exists.

500

Error code 4016: An unexpected error occurred.

GET /users/{user_id}/live_events/{live_event_id}/privacy/domains

Live\essentials 6 endpoints

GET /live_events

The method returns every event belonging to the authenticated user.

operationId: LiveEssentials_getUserLiveEvents

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • not_in_folder - Show only events that aren’t in a folder.
  • not_in_showcase - Show only events that aren’t in a showcase.
  • not_in_webinar - Show only events that aren’t in a webinar.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by creation date.
type query optional string

The type of event to return.

Option descriptions:

  • all - Return all events.
  • one_time - Return one-time events only.
  • recurring - Return recurring events only.

Responses

200

The events were returned.

GET /live_events
GET /live_events/{live_event_id}

This method returns a single event belonging to the authenticated user.

operationId: LiveEssentials_getEventById

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

password query optional string

The password of the event when the privacy is set to password.

Responses

200

The event was returned.

400

Error code 2204: A password is required for password-protected events.

401

Error code 3200: The authenticated user can’t access the event.

404

Error code 5000: No such event exists.

GET /live_events/{live_event_id}
GET /me/live_events

The method returns every event belonging to the authenticated user.

operationId: LiveEssentials_getAllUserLiveEvents

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • not_in_folder - Show only events that aren’t in a folder.
  • not_in_showcase - Show only events that aren’t in a showcase.
  • not_in_webinar - Show only events that aren’t in a webinar.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by creation date.
type query optional string

The type of event to return.

Option descriptions:

  • all - Return all events.
  • one_time - Return one-time events only.
  • recurring - Return recurring events only.

Responses

200

The events were returned.

GET /me/live_events
GET /me/live_events/{live_event_id}

This method returns a single event belonging to the authenticated user.

operationId: LiveEssentials_getSpecificLiveEvent

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

password query optional string

The password of the event when the privacy is set to password.

Responses

200

The event was returned.

400

Error code 2204: A password is required for password-protected events.

401

Error code 3200: The authenticated user can’t access the event.

404

Error code 5000: No such event exists.

GET /me/live_events/{live_event_id}
GET /users/{user_id}/live_events

The method returns every event belonging to the authenticated user.

operationId: LiveEssentials_getUserLiveEvents

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • not_in_folder - Show only events that aren’t in a folder.
  • not_in_showcase - Show only events that aren’t in a showcase.
  • not_in_webinar - Show only events that aren’t in a webinar.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by creation date.
type query optional string

The type of event to return.

Option descriptions:

  • all - Return all events.
  • one_time - Return one-time events only.
  • recurring - Return recurring events only.

Responses

200

The events were returned.

GET /users/{user_id}/live_events
GET /users/{user_id}/live_events/{live_event_id}

This method returns a single event belonging to the authenticated user.

operationId: LiveEssentials_getEventById

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

user_id path required number

The ID of the user.

password query optional string

The password of the event when the privacy is set to password.

Responses

200

The event was returned.

400

Error code 2204: A password is required for password-protected events.

401

Error code 3200: The authenticated user can’t access the event.

404

Error code 5000: No such event exists.

GET /users/{user_id}/live_events/{live_event_id}

Live\eventdestinations 8 endpoints

GET /destination/{destination_id}

This method returns the specified event destination belonging to the authenticated user.

operationId: LiveEventDestinations_getDestination

Parameters

Name In Required Type Description
destination_id path required number

The ID of the event destination.

Responses

200

The event destination was returned.

401

Error code 8000: The user credentials are invalid.

403

Error code 3200: The authenticated user can’t access the event destination.

404

Error code 5000: No such event destination exists.

GET /destination/{destination_id}
GET /me/destinations

This method returns every available event destination for the authenticated user to stream to.

operationId: LiveEventDestinations_getAllAvailableDestinations

Responses

200

The event destinations were returned.

401

Error code 8000: The user credentials are invalid.

403
  • Error code 3200: The authenticated user can’t get the available destinations.
  • Error code 3422: The authenticated user can’t live simulcast.
GET /me/destinations
GET /me/live_events/{live_event_id}/destinations

This method returns every destination of the specified event. The authenticated user must be the owner of the event.

operationId: LiveEventDestinations_listAllAvailableDestinations

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

Responses

200

The event destinations were returned.

400

Error code 2204: Parameters are missing, or the body data is invalid.

401

Error code 8000: The user credentials are invalid.

403

Error code 3200: The authenticated user can’t access the event destination.

404

Error code 5000: No such event or user exists.

GET /me/live_events/{live_event_id}/destinations
GET /me/videos/{video_id}/destinations

This method returns every destination of the specified event. The authenticated user must be the owner of the event.

operationId: LiveEventDestinations_getAllDestinations

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The event destinations were returned.

401

Error code 8000: The user credentials are invalid.

403

Error code 3200: The authenticated user can’t access the event destinations.

404

Error code 5000: No such event or user exists.

GET /me/videos/{video_id}/destinations
GET /users/{user_id}/destinations

This method returns every available event destination for the authenticated user to stream to.

operationId: LiveEventDestinations_listAvailableDestinations

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

Responses

200

The event destinations were returned.

401

Error code 8000: The user credentials are invalid.

403
  • Error code 3200: The authenticated user can’t get the available destinations.
  • Error code 3422: The authenticated user can’t live simulcast.
GET /users/{user_id}/destinations
GET /users/{user_id}/live_events/{live_event_id}/destinations

This method returns every destination of the specified event. The authenticated user must be the owner of the event.

operationId: LiveEventDestinations_getAllAvailableDestinations

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

user_id path required number

The ID of the user.

Responses

200

The event destinations were returned.

400

Error code 2204: Parameters are missing, or the body data is invalid.

401

Error code 8000: The user credentials are invalid.

403

Error code 3200: The authenticated user can’t access the event destination.

404

Error code 5000: No such event or user exists.

GET /users/{user_id}/live_events/{live_event_id}/destinations
GET /users/{user_id}/live_events/{live_event_id}/ott_destinations

This method returns every OTT destination of the specified event. The authenticated user must be the owner of the event.

operationId: LiveEventDestinations_getAllOttDestinations

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

user_id path required number

The ID of the user.

Responses

200

The OTT destinations were returned.

401

Error code 8000: The user credentials are invalid.

403

Error code 3200: The authenticated user can’t access the event destination.

404

Error code 5000: No such event or user exists.

GET /users/{user_id}/live_events/{live_event_id}/ott_destinations
GET /users/{user_id}/videos/{video_id}/destinations

This method returns every destination of the specified event. The authenticated user must be the owner of the event.

operationId: LiveEventDestinations_getAllAvailableDestinations

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

video_id path required number

The ID of the video.

Responses

200

The event destinations were returned.

401

Error code 8000: The user credentials are invalid.

403

Error code 3200: The authenticated user can’t access the event destinations.

404

Error code 5000: No such event or user exists.

GET /users/{user_id}/videos/{video_id}/destinations

Live\eventm3u8playback 2 endpoints

GET /me/live_events/{live_event_id}/m3u8_playback

This method returns an M3U8 playback URL for the specified event stream. You should use this endpoint only in conjunction with our recommended procedure for playing events via HLS. For more information, see our HLS guide.

operationId: LiveEventM3U8Playback_getUrl

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

max_fps_fhd query optional number

The requested maximum frames per second.

Responses

200

The M3U8 playback URL was returned.

400

Error code 10008: The event hasn’t started.

401

Error code 8000: The user credentials are invalid.

403

Error code 3200: The authenticated user can’t access the M3U8 playback URL.

404

Error code 5000: No such event or user exists.

500
  • Error code 4020: No streamable video was found.
  • Error code 4021: No video was found.
503

Error code 7900: The streamable video in progress will be available soon.

GET /me/live_events/{live_event_id}/m3u8_playback
GET /users/{user_id}/live_events/{live_event_id}/m3u8_playback

This method returns an M3U8 playback URL for the specified event stream. You should use this endpoint only in conjunction with our recommended procedure for playing events via HLS. For more information, see our HLS guide.

operationId: LiveEventM3U8Playback_getUrlForEventStream

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

user_id path required number

The ID of the user.

max_fps_fhd query optional number

The requested maximum frames per second.

Responses

200

The M3U8 playback URL was returned.

400

Error code 10008: The event hasn’t started.

401

Error code 8000: The user credentials are invalid.

403

Error code 3200: The authenticated user can’t access the M3U8 playback URL.

404

Error code 5000: No such event or user exists.

500
  • Error code 4020: No streamable video was found.
  • Error code 4021: No video was found.
503

Error code 7900: The streamable video in progress will be available soon.

GET /users/{user_id}/live_events/{live_event_id}/m3u8_playback

Live\eventsessions 1 endpoints

GET /videos/{video_id}/sessions/status

This method returns the ingest status of the specified event.

operationId: LiveEventSessions_getIngestStatus

Parameters

Name In Required Type Description
video_id path required number

The ID of the event.

Responses

200

The ingest status was returned.

GET /videos/{video_id}/sessions/status

Live\eventthumbnails 6 endpoints

GET /live_events/{live_event_id}/pictures

This method returns every thumbnail image of the specified event.

operationId: LiveEventThumbnails_getAllThumbnails

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

Responses

200

The thumbnails were returned.

404

Error code 5000: No such event or user exists.

GET /live_events/{live_event_id}/pictures
GET /live_events/{live_event_id}/pictures/{thumbnail_id}

This method returns a single thumbnail image of the specified event.

operationId: LiveEventThumbnails_getSpecificThumbnail

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

thumbnail_id path required number

The ID of the thumbnail.

Responses

200

The thumbnail was returned.

403

Error code 3200: The authenticated user can’t access the thumbnail.

404

Error code 5000: No such event, thumbnail, or user exists.

GET /live_events/{live_event_id}/pictures/{thumbnail_id}
GET /me/live_events/{live_event_id}/pictures

This method returns every thumbnail image of the specified event.

operationId: LiveEventThumbnails_getAll

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

Responses

200

The thumbnails were returned.

404

Error code 5000: No such event or user exists.

GET /me/live_events/{live_event_id}/pictures
GET /me/live_events/{live_event_id}/pictures/{thumbnail_id}

This method returns a single thumbnail image of the specified event.

operationId: LiveEventThumbnails_getSpecificThumbnail

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

thumbnail_id path required number

The ID of the thumbnail.

Responses

200

The thumbnail was returned.

403

Error code 3200: The authenticated user can’t access the thumbnail.

404

Error code 5000: No such event, thumbnail, or user exists.

GET /me/live_events/{live_event_id}/pictures/{thumbnail_id}
GET /users/{user_id}/live_events/{live_event_id}/pictures

This method returns every thumbnail image of the specified event.

operationId: LiveEventThumbnails_getAllThumbs

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

user_id path required number

The ID of the user.

Responses

200

The thumbnails were returned.

404

Error code 5000: No such event or user exists.

GET /users/{user_id}/live_events/{live_event_id}/pictures
GET /users/{user_id}/live_events/{live_event_id}/pictures/{thumbnail_id}

This method returns a single thumbnail image of the specified event.

operationId: LiveEventThumbnails_getSpecificThumbnail

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

thumbnail_id path required number

The ID of the thumbnail.

user_id path required number

The ID of the user.

Responses

200

The thumbnail was returned.

403

Error code 3200: The authenticated user can’t access the thumbnail.

404

Error code 5000: No such event, thumbnail, or user exists.

GET /users/{user_id}/live_events/{live_event_id}/pictures/{thumbnail_id}

Live\eventvideos 6 endpoints

GET /live_events/{live_event_id}/videos

This method returns every video in the specified event.

operationId: LiveEventVideos_listLiveEventVideos

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

containing_uri query optional string

The page that contains the video URI.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable events.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • added - Sort the results by most recently added videos.
  • alphabetical - Sort the results alphabetically.
  • arranged - Sort the results in the order that the user has arranged the videos.
  • comments - Sort the results by number of comments.
  • date - Sort the results by creation date.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

400

Error code 2204: A password is required for password-protected events.

401

Error code 3200: The authenticated user can’t access the event.

404

Error code 5000: No such event exists.

GET /live_events/{live_event_id}/videos
GET /live_events/{live_event_id}/videos/{video_id}

This method returns a single video in the specified event.

operationId: LiveEventVideos_specificEventVideo

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

video_id path required number

The ID of the video.

Responses

200

The video was returned.

400

Error code 2204: A password is required for password-protected events.

401

Error code 3200: The authenticated user can’t access the event.

404

Error code 5000: No such event, video, or user exists.

GET /live_events/{live_event_id}/videos/{video_id}
GET /me/live_events/{live_event_id}/videos

This method returns every video in the specified event.

operationId: LiveEventVideos_getAll

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

containing_uri query optional string

The page that contains the video URI.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable events.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • added - Sort the results by most recently added videos.
  • alphabetical - Sort the results alphabetically.
  • arranged - Sort the results in the order that the user has arranged the videos.
  • comments - Sort the results by number of comments.
  • date - Sort the results by creation date.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

400

Error code 2204: A password is required for password-protected events.

401

Error code 3200: The authenticated user can’t access the event.

404

Error code 5000: No such event exists.

GET /me/live_events/{live_event_id}/videos
GET /me/live_events/{live_event_id}/videos/{video_id}

This method returns a single video in the specified event.

operationId: LiveEventVideos_specificVideo

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

video_id path required number

The ID of the video.

Responses

200

The video was returned.

400

Error code 2204: A password is required for password-protected events.

401

Error code 3200: The authenticated user can’t access the event.

404

Error code 5000: No such event, video, or user exists.

GET /me/live_events/{live_event_id}/videos/{video_id}
GET /users/{user_id}/live_events/{live_event_id}/videos

This method returns every video in the specified event.

operationId: LiveEventVideos_listAllVideosInEvent

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

user_id path required number

The ID of the user.

containing_uri query optional string

The page that contains the video URI.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable events.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • added - Sort the results by most recently added videos.
  • alphabetical - Sort the results alphabetically.
  • arranged - Sort the results in the order that the user has arranged the videos.
  • comments - Sort the results by number of comments.
  • date - Sort the results by creation date.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

400

Error code 2204: A password is required for password-protected events.

401

Error code 3200: The authenticated user can’t access the event.

404

Error code 5000: No such event exists.

GET /users/{user_id}/live_events/{live_event_id}/videos
GET /users/{user_id}/live_events/{live_event_id}/videos/{video_id}

This method returns a single video in the specified event.

operationId: LiveEventVideos_getSpecificVideo

Parameters

Name In Required Type Description
live_event_id path required number

The ID of the event.

user_id path required number

The ID of the user.

video_id path required number

The ID of the video.

Responses

200

The video was returned.

400

Error code 2204: A password is required for password-protected events.

401

Error code 3200: The authenticated user can’t access the event.

404

Error code 5000: No such event, video, or user exists.

GET /users/{user_id}/live_events/{live_event_id}/videos/{video_id}

Ondemand\backgrounds 2 endpoints

GET /ondemand/pages/{ondemand_id}/backgrounds

This method returns every background image on the specified On Demand page. The authenticated user must be the owner of the page.

operationId: OnDemandBackgrounds_getAllBackgroundsOnPage

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The background images were returned.

404

No such On Demand page exists.

GET /ondemand/pages/{ondemand_id}/backgrounds
GET /ondemand/pages/{ondemand_id}/backgrounds/{background_id}

This method returns a single background image on the specified On Demand page. The authenticated user must be the owner of the page.

operationId: OnDemandBackgrounds_getSpecificBackground

Parameters

Name In Required Type Description
background_id path required number

The ID of the background image.

ondemand_id path required number

The ID of the On Demand page.

Responses

200

The background image was returned.

403

The authenticated user can’t get this background image.

404

No such On Demand page or background image exists.

GET /ondemand/pages/{ondemand_id}/backgrounds/{background_id}

Ondemand\essentials 3 endpoints

GET /me/ondemand/pages

This method returns every On Demand page belonging to the authenticated user.

operationId: OnDemandEssentials_getAllUserPages

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The type of the page to return.

Option descriptions:

  • film - The page type is a film.
  • series - The page type is a series.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • added - Sort the results by most recently added page.
  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • modified_time - Sort the results by time of page modification.
  • name - Sort the results by page name.
  • publish.time - Sort the results by time of page publishing.
  • rating - Sort the results by content rating.

Responses

200

The On Demand pages were returned.

404

No such user exists.

GET /me/ondemand/pages
GET /ondemand/pages/{ondemand_id}

This method returns the specified On Demand page.

operationId: get_vod

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

Responses

200

The On Demand page was returned.

404

No such On Demand page exists.

GET /ondemand/pages/{ondemand_id}
GET /users/{user_id}/ondemand/pages

This method returns every On Demand page belonging to the authenticated user.

operationId: OnDemandEssentials_getAllUserPages

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The type of the page to return.

Option descriptions:

  • film - The page type is a film.
  • series - The page type is a series.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • added - Sort the results by most recently added page.
  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • modified_time - Sort the results by time of page modification.
  • name - Sort the results by page name.
  • publish.time - Sort the results by time of page publishing.
  • rating - Sort the results by content rating.

Responses

200

The On Demand pages were returned.

404

No such user exists.

GET /users/{user_id}/ondemand/pages

Ondemand\genres 6 endpoints

GET /ondemand/genres

This method returns every existing On Demand genre.

operationId: OnDemandGenres_getAllGenres

Responses

200

The genres were returned.

GET /ondemand/genres
GET /ondemand/genres/{genre_id}

This method returns a single On Demand genre.

operationId: OnDemandGenres_specificGenreGet

Parameters

Name In Required Type Description
genre_id path required string

The ID of the genre.

Responses

200

The genre was returned.

404

No such genre exists.

GET /ondemand/genres/{genre_id}
GET /ondemand/genres/{genre_id}/pages

This method returns every On Demand page that belongs to the specified genre.

operationId: OnDemandGenres_getAllPagesInGenre

Parameters

Name In Required Type Description
genre_id path required string

The ID of the genre.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • country - Sort the results by country.
  • my_region - Sort the results by user’s region.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • name - Sort the results by name.
  • publish.time - Sort the results by time of publishing.
  • videos - Sort the results by video.

Responses

200

The On Demand pages in the genre were returned.

GET /ondemand/genres/{genre_id}/pages
GET /ondemand/genres/{genre_id}/pages/{ondemand_id}

This method returns a single On Demand page that belongs to the specified genre.

operationId: OnDemandGenres_getSpecificPageInGenre

Parameters

Name In Required Type Description
genre_id path required string

The ID of the genre.

ondemand_id path required number

The ID of the On Demand page.

Responses

200

The On Demand page in the genre was returned.

404

No such On Demand page or genre exists.

GET /ondemand/genres/{genre_id}/pages/{ondemand_id}
GET /ondemand/pages/{ondemand_id}/genres

This method returns every genre associated with the specified On Demand page.

operationId: OnDemandGenres_getGenres

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

Responses

200

The genres were returned.

404

No such On Demand page exists.

GET /ondemand/pages/{ondemand_id}/genres
GET /ondemand/pages/{ondemand_id}/genres/{genre_id}

This method determines whether an On Demand page is associated with the specified genre.

operationId: OnDemandGenres_checkGenreAssociation

Parameters

Name In Required Type Description
genre_id path required string

The ID of the genre.

ondemand_id path required number

The ID of the On Demand page.

Responses

200

The On Demand page is in this genre.

404

No such On Demand page or genre exists.

GET /ondemand/pages/{ondemand_id}/genres/{genre_id}

Ondemand\posters 2 endpoints

GET /ondemand/pages/{ondemand_id}/pictures

This method returns every poster on the specified On Demand page.

operationId: OnDemandPosters_getOnDemandPagePosters

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The posters were returned.

404

No such On Demand page exists.

GET /ondemand/pages/{ondemand_id}/pictures
GET /ondemand/pages/{ondemand_id}/pictures/{poster_id}

This method returns a single poster on the specified On Demand page.

operationId: OnDemandPosters_getSpecificPoster

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

poster_id path required number

The ID of the poster.

Responses

200

The poster was returned.

GET /ondemand/pages/{ondemand_id}/pictures/{poster_id}

Ondemand\promotions 3 endpoints

GET /ondemand/pages/{ondemand_id}/promotions

This method returns every promotion on the specified On Demand page. The authenticated user must be the owner of the page.

operationId: OnDemandPromotions_getAllPagePromotions

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

filter query required string

The type of filter to apply to the results.

Option descriptions:

  • batch - Filter the results by the batch promotion.
  • default - Filter the results by the default promotion.
  • single - Filter the results by the single promotion.
  • vip - Filter the results by the vip promotion.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The promotions were returned.

400

The filter is invalid.

403

The authenticated user can’t get promotions on this On Demand page.

404

No such On Demand page exists.

GET /ondemand/pages/{ondemand_id}/promotions
GET /ondemand/pages/{ondemand_id}/promotions/{promotion_id}

This method returns a single promotion on the specified On Demand page. The authenticated user must be the owner of the page.

operationId: OnDemandPromotions_specificPromotionGet

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

promotion_id path required number

The ID of the promotion.

Responses

200

The promotion was returned.

403

The authenticated user can’t get promotions on this On Demand page.

404

No such On Demand page or promotion exists.

GET /ondemand/pages/{ondemand_id}/promotions/{promotion_id}
GET /ondemand/pages/{ondemand_id}/promotions/{promotion_id}/codes

This method returns every code of the specified promotion on an On Demand page. The authenticated user must be the owner of the page.

operationId: OnDemandPromotions_getAllPromotionCodes

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

promotion_id path required number

The ID of the promotion.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The codes were returned.

403

The authenticated user can’t get promotions on this On Demand page.

404

No such On Demand page or promotion exists.

GET /ondemand/pages/{ondemand_id}/promotions/{promotion_id}/codes

Ondemand\purchasesandrentals 3 endpoints

GET /me/ondemand/purchases

This method returns every purchase and rental that the authenticated user has made across all On Demand pages.

operationId: OnDemandPurchasesAndRentals_getAllUserPurchasesAndRentals

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The type of the On Demand video to filter on.

Option descriptions:

  • all - Filter by all video types.
  • expiring_soon - Filter by videos that expire soon.
  • film - Filter by film.
  • important - Filter by pages that are about to expire.
  • purchased - Filter by purchased videos.
  • rented - Filter by rented videos.
  • series - Filter by series.
  • subscription - Filter by video subscription.
  • unwatched - Filter by unwatched videos.
  • watched - Filter by watched videos.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • added - Sort the results by most recently added video.
  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • name - Sort the results by video name.
  • purchase_time - Sort the results by time of video purchase.
  • rating - Sort the results by content rating.
  • release_date - Sort the results by video release date.

Responses

200

The purchases and rentals were returned.

403

The authenticated user can’t get purchases and rentals for another user’s account.

GET /me/ondemand/purchases
GET /me/ondemand/purchases/{ondemand_id}

This method determines whether the authenticated user has made a purchase or rental from the specified On Demand page.

operationId: OnDemandPurchasesAndRentals_checkUserPurchasesAndRentals

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

Responses

200

The authenticated user has made this purchase.

403

The authenticated user can’t make purchases for another user’s account.

404

No such user or On Demand page exists.

GET /me/ondemand/purchases/{ondemand_id}
GET /users/{user_id}/ondemand/purchases

This method returns every purchase and rental that the authenticated user has made across all On Demand pages.

operationId: OnDemandPurchasesAndRentals_listUserPurchasesAndRentals

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The type of the On Demand video to filter on.

Option descriptions:

  • all - Filter by all video types.
  • expiring_soon - Filter by videos that expire soon.
  • film - Filter by film.
  • important - Filter by pages that are about to expire.
  • purchased - Filter by purchased videos.
  • rented - Filter by rented videos.
  • series - Filter by series.
  • subscription - Filter by video subscription.
  • unwatched - Filter by unwatched videos.
  • watched - Filter by watched videos.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • added - Sort the results by most recently added video.
  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.
  • name - Sort the results by video name.
  • purchase_time - Sort the results by time of video purchase.
  • rating - Sort the results by content rating.
  • release_date - Sort the results by video release date.

Responses

200

The purchases and rentals were returned.

403

The authenticated user can’t get purchases and rentals for another user’s account.

GET /users/{user_id}/ondemand/purchases

Ondemand\regions 4 endpoints

GET /ondemand/pages/{ondemand_id}/regions

This method returns every region on the specified On Demand page. The authenticated user must be the owner of the page.

operationId: OnDemandRegions_getAll

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

Responses

200

The regions were returned.

404

No such On Demand page exists.

GET /ondemand/pages/{ondemand_id}/regions
GET /ondemand/pages/{ondemand_id}/regions/{country}

This method returns a single region on the specified On Demand page. The authenticated user must be the owner of the page.

operationId: OnDemandRegions_getSpecificRegion

Parameters

Name In Required Type Description
country path required string

The country code of the region to return.

ondemand_id path required number

The ID of the On Demand page.

Responses

200

The region was returned.

404

No such On Demand page or region exists.

GET /ondemand/pages/{ondemand_id}/regions/{country}
GET /ondemand/regions

This method returns every existing On Demand region.

operationId: get_regions

Responses

200

The regions were returned.

GET /ondemand/regions
GET /ondemand/regions/{country}

This method returns a single On Demand region.

operationId: get_region

Parameters

Name In Required Type Description
country path required string

The country code of the region to return.

Responses

200

The region was returned.

404

No such region exists.

GET /ondemand/regions/{country}

Ondemand\seasons 3 endpoints

GET /ondemand/pages/{ondemand_id}/seasons

This method returns every season on the specified On Demand page.

operationId: OnDemandSeasons_listAll

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • viewable - Filter by viewable seasons.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • date - Sort the results by date.
  • manual - Sort the results manually.

Responses

200

The seasons were returned.

404

No such On Demand page exists.

GET /ondemand/pages/{ondemand_id}/seasons
GET /ondemand/pages/{ondemand_id}/seasons/{season_id}

This method returns a single season on the specified On Demand page.

operationId: OnDemandSeasons_specificGet

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

season_id path required number

The ID of the season.

Responses

200

The season was returned.

404

No such On Demand page or season exists.

GET /ondemand/pages/{ondemand_id}/seasons/{season_id}
GET /ondemand/pages/{ondemand_id}/seasons/{season_id}/videos

This method returns every video in the specified season on an On Demand page.

operationId: OnDemandSeasons_getAllVideosInSeason

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

season_id path required number

The ID of the season.

filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • viewable - Filter by viewable videos.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • date - Sort the results by date.
  • default - Use the default sorting method.
  • manual - Sort the results manually.
  • name - Sort the results by name.
  • purchase_time - Sort the results by time of purchase.
  • release_date - Sort the results by release date.

Responses

200

The videos were returned.

GET /ondemand/pages/{ondemand_id}/seasons/{season_id}/videos

Ondemand\videos 2 endpoints

GET /ondemand/pages/{ondemand_id}/videos

This method returns every video on the specified On Demand page.

operationId: OnDemandVideos_getAllVideos

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • all - Filter for all videos.
  • buy - Filter for purchased videos.
  • expiring_soon - Filter for videos that expire soon.
  • extra - Filter for extra footage videos.
  • main - Filter for main videos.
  • main.viewable - Filter for videos that are both the main video and are viewable.
  • rent - Filter for rented videos.
  • trailer - Filter for trailer videos.
  • unwatched - Filter for unwatched videos.
  • viewable - Filter for videos that are viewable.
  • watched - Filter for watched videos.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • date - Sort the results by date.
  • default - Use the default sorting method.
  • episode - Sort the results by episode.
  • manual - Sort the results manually.
  • name - Sort the results by name.
  • purchase_time - Sort the results by time of purchase.
  • release_date - Sort the results by release date.

Responses

200

The videos were returned.

GET /ondemand/pages/{ondemand_id}/videos
GET /ondemand/pages/{ondemand_id}/videos/{video_id}

This method returns a single video on the specified On Demand page. Use this method to determine whether the video is on the page.

operationId: OnDemandVideos_specificVideoGet

Parameters

Name In Required Type Description
ondemand_id path required number

The ID of the On Demand page.

video_id path required number

The ID of the video.

Responses

200

The video was returned.

GET /ondemand/pages/{ondemand_id}/videos/{video_id}

Payments\essentials 3 endpoints

GET /me/payment_methods

This method returns a list of all Vimeo payments service payment methods that are available to the authenticated user.

operationId: PaymentsEssentials_listPaymentMethods

Parameters

Name In Required Type Description
cardmember_name query optional string

The name of the card member.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

show_disabled query optional boolean

Whether to return disabled payment methods.

user_id query required number

The ID of the user.

Request Body

application/json
schema PaymentsEssentialsListPaymentMethodsRequest
Property Type Required
type string optional

Responses

200

The list of payments service payment methods was returned.

400

Error code 5000: A parameter is invalid.

401

Error code 8000: The authenticated user can’t make this request.

GET /me/payment_methods
GET /me/payment_methods/{payment_method_id}

This method returns information about the specified Vimeo payments service payment method.

operationId: PaymentsEssentials_getPaymentMethodInfo

Parameters

Name In Required Type Description
payment_method_id path required string

The ID of the payment method.

Responses

200

The payments service payment method information was returned.

404

Error code 5000: No such payment method exists.

GET /me/payment_methods/{payment_method_id}
GET /users/{user_id}/subscriptions/{subscription_id}

This method returns information about the specified Vimeo payments service subscription.

operationId: PaymentsEssentials_getSubscriptionInfo

Parameters

Name In Required Type Description
subscription_id path required string

The ID of the subscription.

Responses

200

OK

GET /users/{user_id}/subscriptions/{subscription_id}

Portfolios\essentials 4 endpoints

GET /me/portfolios

This method returns every portfolio belonging to the authenticated user.

operationId: PortfoliosEssentials_getAllUserPortfolios

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by creation date.

Responses

200

The portfolios were returned.

GET /me/portfolios
GET /me/portfolios/{portfolio_id}

This method returns a single portfolio belonging to the authenticated user.

operationId: PortfoliosEssentials_getUserPortfolio

Parameters

Name In Required Type Description
portfolio_id path required number

The ID of the portfolio.

Responses

200

The portfolio was returned.

GET /me/portfolios/{portfolio_id}
GET /users/{user_id}/portfolios

This method returns every portfolio belonging to the authenticated user.

operationId: get_portfolios

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by creation date.

Responses

200

The portfolios were returned.

GET /users/{user_id}/portfolios
GET /users/{user_id}/portfolios/{portfolio_id}

This method returns a single portfolio belonging to the authenticated user.

operationId: get_portfolio

Parameters

Name In Required Type Description
portfolio_id path required number

The ID of the portfolio.

user_id path required number

The ID of the user.

Responses

200

The portfolio was returned.

GET /users/{user_id}/portfolios/{portfolio_id}

Portfolios\videos 4 endpoints

GET /me/portfolios/{portfolio_id}/videos

This method returns every video from the specified portfolio belonging to the authenticated user.

operationId: PortfoliosVideos_getAllPortfolioVideos

Parameters

Name In Required Type Description
portfolio_id path required number

The ID of the portfolio.

containing_uri query optional string

The page that contains the video URI.

filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by creation date.
  • default - Use the default sorting method.
  • likes - Sort the results by number of likes.
  • manual - Sort the results by their user-specified order.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

GET /me/portfolios/{portfolio_id}/videos
GET /me/portfolios/{portfolio_id}/videos/{video_id}

This method returns a single video from the specified portfolio belonging to the authenticated user.

operationId: PortfoliosVideos_getSpecificVideo

Parameters

Name In Required Type Description
portfolio_id path required number

The ID of the portfolio.

video_id path required number

The ID of the video.

Responses

200

The video was returned.

GET /me/portfolios/{portfolio_id}/videos/{video_id}
GET /users/{user_id}/portfolios/{portfolio_id}/videos

This method returns every video from the specified portfolio belonging to the authenticated user.

operationId: PortfoliosVideos_getAllPortfolioVideos

Parameters

Name In Required Type Description
portfolio_id path required number

The ID of the portfolio.

user_id path required number

The ID of the user.

containing_uri query optional string

The page that contains the video URI.

filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by creation date.
  • default - Use the default sorting method.
  • likes - Sort the results by number of likes.
  • manual - Sort the results by their user-specified order.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

GET /users/{user_id}/portfolios/{portfolio_id}/videos
GET /users/{user_id}/portfolios/{portfolio_id}/videos/{video_id}

This method returns a single video from the specified portfolio belonging to the authenticated user.

operationId: PortfoliosVideos_getSpecificVideo

Parameters

Name In Required Type Description
portfolio_id path required number

The ID of the portfolio.

user_id path required number

The ID of the user.

video_id path required number

The ID of the video.

Responses

200

The video was returned.

GET /users/{user_id}/portfolios/{portfolio_id}/videos/{video_id}

Showcases\customshowcaselogos 2 endpoints

GET /users/{user_id}/albums/{album_id}/logos

This method returns every custom logo of the specified showcase. The authenticated user must be the owner of the showcase.

operationId: ShowcasesCustomShowcaseLogos_listAllCustomLogos

Parameters

Name In Required Type Description
album_id path required number

The ID of the showcase.

user_id path required number

The ID of the user.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The custom logos were returned.

404

No such showcase exists.

GET /users/{user_id}/albums/{album_id}/logos
GET /users/{user_id}/albums/{album_id}/logos/{logo_id}

This method returns a single custom logo of the specified showcase. The authenticated user must be the owner of the showcase.

operationId: ShowcasesCustomShowcaseLogos_getSpecificLogo

Parameters

Name In Required Type Description
album_id path required number

The ID of the showcase.

logo_id path required number

The ID of the custom logo.

user_id path required number

The ID of the user.

Responses

200

The custom logo was returned.

403

The authenticated user can’t access this custom logo.

404

No such showcase exists, or it doesn’t contain the specified custom logo.

GET /users/{user_id}/albums/{album_id}/logos/{logo_id}

Showcases\customshowcasethumbnails 2 endpoints

GET /users/{user_id}/albums/{album_id}/custom_thumbnails

This method returns every custom thumbnail of the specified showcase.

operationId: ShowcasesCustomShowcaseThumbnails_list

Parameters

Name In Required Type Description
album_id path required number

The ID of the showcase.

user_id path required number

The ID of the user.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The custom thumbnails were returned.

403

Error code 3200: The authenticated user can’t view the custon thumbnails from this showcase.

404

No such showcase exists.

GET /users/{user_id}/albums/{album_id}/custom_thumbnails
GET /users/{user_id}/albums/{album_id}/custom_thumbnails/{thumbnail_id}

This method returns a single custom thumbnail of the specified showcase. The authenticated user must be the owner of the showcase.

operationId: ShowcasesCustomShowcaseThumbnails_getSpecificThumbnail

Parameters

Name In Required Type Description
album_id path required number

The ID of the showcase.

thumbnail_id path required number

The ID of the custom thumbnail.

user_id path required number

The ID of the user.

Responses

200

The custom thumbnail was returned.

403

The authenticated user can’t view this custom thumbnail.

404

No such showcase exists, or it doesn’t contain the specified custom thumbnail.

GET /users/{user_id}/albums/{album_id}/custom_thumbnails/{thumbnail_id}

Showcases\essentials 4 endpoints

GET /me/albums

This method returns every showcase belonging to the authenticated user.

operationId: ShowcasesEssentials_getAllUserShowcases

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date of creation.
  • duration - Sort the results by duration.
  • videos - Sort the results by the number of videos.

Responses

200

The showcases were returned.

400

A parameter is invalid.

GET /me/albums
GET /me/albums/{album_id}

This method returns the specified showcase. The authenticated user must be the owner of the showcase.

operationId: ShowcasesEssentials_getSpecificShowcase

Parameters

Name In Required Type Description
album_id path required number

The ID of the showcase.

Responses

200

The showcase was returned.

404

No such showcase exists.

GET /me/albums/{album_id}
GET /users/{user_id}/albums

This method returns every showcase belonging to the authenticated user.

operationId: get_showcases

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date of creation.
  • duration - Sort the results by duration.
  • videos - Sort the results by the number of videos.

Responses

200

The showcases were returned.

400

A parameter is invalid.

GET /users/{user_id}/albums
GET /users/{user_id}/albums/{album_id}

This method returns the specified showcase. The authenticated user must be the owner of the showcase.

operationId: get_showcase

Parameters

Name In Required Type Description
album_id path required number

The ID of the showcase.

user_id path required number

The ID of the user.

Responses

200

The showcase was returned.

404

No such showcase exists.

GET /users/{user_id}/albums/{album_id}

Showcases\showcasevideos 6 endpoints

GET /albums/{album_id}/available_videos

This method returns every video belonging to the authenticated user that can be added to or removed from the specified showcase.

operationId: ShowcasesShowcaseVideos_listInShowcase

Parameters

Name In Required Type Description
album_id path required number

The ID of the showcase.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by date.
  • default - Sort the results by the default method.
  • duration - Sort the results by duration.
  • last_user_action_event_date - Sort the results by most recent user interaction.
  • likes - Sort the results by number of likes.
  • modified_time - Sort the results by last modification.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

403

Error code 3200: The authenticated user can’t add videos to this showcase.

404

No such showcase exists.

GET /albums/{album_id}/available_videos
GET /me/albums/{album_id}/videos

This method returns every video in the specified showcase. The authenticated user must be the owner of the showcase.

operationId: ShowcasesShowcaseVideos_listInShowcase

Parameters

Name In Required Type Description
album_id path required number

The ID of the showcase.

containing_uri query optional string

The page containing the video URI.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Filter the results by the embeddable attribute.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

password query optional string

The password of the showcase.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by date.
  • default - Sort the results by the default method.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • manual - Sort the results by their manual order.
  • modified_time - Sort the results by last modification.
  • plays - Sort the results by number of plays.
weak_search query optional boolean

Whether to include private videos in the search. Please note that a separate search service provides this functionality. The service performs a partial text search on the video’s name.

Responses

200

The videos were returned.

404

No such showcase exists.

GET /me/albums/{album_id}/videos
GET /me/albums/{album_id}/videos/{video_id}

This method returns a single video belonging to the specified showcase. The authenticated user must be the owner of the showcase.

operationId: ShowcasesShowcaseVideos_getSpecificVideoInShowcase

Parameters

Name In Required Type Description
album_id path required number

The ID of the showcase.

video_id path required number

The ID of the video.

password query optional string

The password of the showcase.

Responses

200

The video was returned.

404

No such showcase exists, or the video doesn’t belong to it.

GET /me/albums/{album_id}/videos/{video_id}
GET /users/{user_id}/albums/{album_id}/videos

This method returns every video in the specified showcase. The authenticated user must be the owner of the showcase.

operationId: ShowcasesShowcaseVideos_getShowcaseVideos

Parameters

Name In Required Type Description
album_id path required number

The ID of the showcase.

user_id path required number

The ID of the user.

containing_uri query optional string

The page containing the video URI.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Filter the results by the embeddable attribute.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

password query optional string

The password of the showcase.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by date.
  • default - Sort the results by the default method.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • manual - Sort the results by their manual order.
  • modified_time - Sort the results by last modification.
  • plays - Sort the results by number of plays.
weak_search query optional boolean

Whether to include private videos in the search. Please note that a separate search service provides this functionality. The service performs a partial text search on the video’s name.

Responses

200

The videos were returned.

404

No such showcase exists.

GET /users/{user_id}/albums/{album_id}/videos
GET /users/{user_id}/albums/{album_id}/videos/{video_id}

This method returns a single video belonging to the specified showcase. The authenticated user must be the owner of the showcase.

operationId: ShowcasesShowcaseVideos_getSpecificVideoInShowcase

Parameters

Name In Required Type Description
album_id path required number

The ID of the showcase.

user_id path required number

The ID of the user.

video_id path required number

The ID of the video.

password query optional string

The password of the showcase.

Responses

200

The video was returned.

404

No such showcase exists, or the video doesn’t belong to it.

GET /users/{user_id}/albums/{album_id}/videos/{video_id}
GET /videos/{video_id}/available_albums

This endpoint returns every showcase to which the authenticated user can add or remove the specified video. The user must be the owner of the showcase.

operationId: ShowcasesShowcaseVideos_listAvailableShowcases

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The showcases were returned.

403

Error code 3433: The authenticated user can’t add the video to or remove the video from any showcases.

GET /videos/{video_id}/available_albums

Subscriptionplans\essentials 1 endpoints

GET /subscription_plans/{tier}

This method returns the specified subscription plan.

operationId: get_plan

Parameters

Name In Required Type Description
tier path required string

The type of subscription plan.

Option descriptions:

  • advanced - The plan type is Vimeo Advanced.
  • business - The plan type is Vimeo Business.
  • free - The plan type is Vimeo Free.
  • live_premium - The plan type is Vimeo Premium.
  • plus - The plan type is Vimeo Plus.
  • pro - The plan type is Vimeo Pro.
  • pro_unlimited - The plan type is Vimeo Pro Unlimited.
  • standard - The plan type is Vimeo Standard.
  • starter - The plan type is Vimeo Starter.

Responses

200

OK

GET /subscription_plans/{tier}

Tags\essentials 1 endpoints

GET /tags/{word}

This method returns the specified tag.

operationId: get_tag

Parameters

Name In Required Type Description
word path required string

The tag to return.

Responses

200

The tag was returned.

GET /tags/{word}

Teams\members 3 endpoints

GET /teammembers/{code}

This method returns information about the membership of the specified team. Usage is currently limited to the team join forms.

operationId: TeamsMembers_getMembershipInformation

Parameters

Name In Required Type Description
code path required string

The code corresponding to the desired team. This value appears under TeamUser > code.

Responses

200

OK

GET /teammembers/{code}
GET /users/{user_id}/team/role

This method returns information about the authenticated user’s role on the specified team owner’s team.

operationId: TeamsMembers_getUserTeamRole

Parameters

Name In Required Type Description
user_id path required number

The ID of the team owner.

Responses

200

OK

GET /users/{user_id}/team/role
GET /users/{user_id}/team_users/{team_user_id}

This method returns information about the membership of the specified team. Usage is currently limited to the team join forms.

operationId: TeamsMembers_getTeamMembershipInformation

Parameters

Name In Required Type Description
team_user_id path required number

The ID of the team user.

user_id path required number

The ID of the team owner.

Responses

200

OK

GET /users/{user_id}/team_users/{team_user_id}

Tutorial\essentials 1 endpoints

GET /tutorial

This method tests whether users who are working through the Getting Started guides have set up their configurations correctly.

operationId: developer_tutorial

Responses

200

OK

GET /tutorial

Users\analytics 2 endpoints

GET /me/analytics

This method returns analytic metrics for the authenticated user.

operationId: UsersAnalytics_getUserMetrics

Parameters

Name In Required Type Description
dimension query required string

The data dimension by which to group the results.

Option descriptions:

  • country - Group the results by country.
  • device_type - Group the results by device type.
  • embed_domain - Group the results by embed domain.
  • total - Group the results by the time range provided.
  • video - Group the results by video.
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter_content query optional string

A comma-separated list of video, folder, or event URIs to filter.

filter_countries query optional array

A comma-separated list of country codes in ISO-3166 format to filter on.

filter_device_types query optional array

A comma-separated list of device types to filter on.

filter_embed_domains query optional array

A comma-separated list of domain names to filter on.

filter_streaming_types query optional array

A comma-separated list of streaming types to filter on.

from query required string

The start date of the range of results in ISO 8601 format.

page query optional number

The page number of the results to show.

per_page query optional number

The maximum number of items returned from the request, up to a limit of 1000 items. The default value is 50.

sort query optional string

The way to sort the results.

Option descriptions:

  • average_percent_watched - Sort the results by mean seconds played.
  • average_time_watched - Sort the results by mean percentage played.
  • comments - Sort the results by the number of comments.
  • country - Sort the results by country.
  • default - Sort the results by the values of both the dimension and time_interval fields.
  • device_type - Sort the results by device type.
  • downloads - Sort the results by the number of downloads.
  • embed_domain - Sort the results by embed domain.
  • finishes - Sort the results by the number of complete plays.
  • impressions - Sort the results by the number of impressions.
  • like - Sort the results by the number of likes.
  • time - Sort the results by the value of the start_date field. This option is available only when the value of time_interval isn’t none.
  • total_time_watched - Sort the results by total seconds played.
  • unique_impressions - Sort the results by unique impressions.
  • unique_viewers - Sort the results by unique viewers.
  • video - Sort the results by video ID.
  • views - Sort the results by the number of views.
time_interval query optional string

The interval by which to aggregate the data according to the specified data dimension. The default value is none.

Option descriptions:

  • day - Aggregate the results by day according to the specified data dimension.
  • month - Aggregate the results by month according to the specified data dimension.
  • none - The results are not aggregated by time interval.
  • week - Aggregate the results by week according to the specified data dimension.
  • year - Aggregate the results by year according to the specified data dimension.
to query required string

The end date of the range of results in ISO 8601 format.

Responses

200

The analytics were returned.

GET /me/analytics
GET /users/{user_id}/analytics

This method returns analytic metrics for the authenticated user.

operationId: UsersAnalytics_getMetrics

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

dimension query required string

The data dimension by which to group the results.

Option descriptions:

  • country - Group the results by country.
  • device_type - Group the results by device type.
  • embed_domain - Group the results by embed domain.
  • total - Group the results by the time range provided.
  • video - Group the results by video.
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter_content query optional string

A comma-separated list of video, folder, or event URIs to filter.

filter_countries query optional array

A comma-separated list of country codes in ISO-3166 format to filter on.

filter_device_types query optional array

A comma-separated list of device types to filter on.

filter_embed_domains query optional array

A comma-separated list of domain names to filter on.

filter_streaming_types query optional array

A comma-separated list of streaming types to filter on.

from query required string

The start date of the range of results in ISO 8601 format.

page query optional number

The page number of the results to show.

per_page query optional number

The maximum number of items returned from the request, up to a limit of 1000 items. The default value is 50.

sort query optional string

The way to sort the results.

Option descriptions:

  • average_percent_watched - Sort the results by mean seconds played.
  • average_time_watched - Sort the results by mean percentage played.
  • comments - Sort the results by the number of comments.
  • country - Sort the results by country.
  • default - Sort the results by the values of both the dimension and time_interval fields.
  • device_type - Sort the results by device type.
  • downloads - Sort the results by the number of downloads.
  • embed_domain - Sort the results by embed domain.
  • finishes - Sort the results by the number of complete plays.
  • impressions - Sort the results by the number of impressions.
  • like - Sort the results by the number of likes.
  • time - Sort the results by the value of the start_date field. This option is available only when the value of time_interval isn’t none.
  • total_time_watched - Sort the results by total seconds played.
  • unique_impressions - Sort the results by unique impressions.
  • unique_viewers - Sort the results by unique viewers.
  • video - Sort the results by video ID.
  • views - Sort the results by the number of views.
time_interval query optional string

The interval by which to aggregate the data according to the specified data dimension. The default value is none.

Option descriptions:

  • day - Aggregate the results by day according to the specified data dimension.
  • month - Aggregate the results by month according to the specified data dimension.
  • none - The results are not aggregated by time interval.
  • week - Aggregate the results by week according to the specified data dimension.
  • year - Aggregate the results by year according to the specified data dimension.
to query required string

The end date of the range of results in ISO 8601 format.

Responses

200

The analytics were returned.

GET /users/{user_id}/analytics

Users\essentials 2 endpoints

GET /me

This method returns the authenticated user.

operationId: UsersEssentials_getUser

Responses

200

The user was returned.

GET /me
GET /users/{user_id}

This method returns the authenticated user.

operationId: get_user

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

Responses

200

The user was returned.

GET /users/{user_id}

Users\feeds 2 endpoints

GET /me/feed

This method returns every video in the authenticated user’s feed.

operationId: UsersFeeds_getUserFeedVideos

Parameters

Name In Required Type Description
offset query optional string

The pagination offset. We recommend that you use the pagination links in the feed response instead of working with this value directly. For more details, see our pagination documentation.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

type query optional string

The feed type.

Option descriptions:

  • appears - Videos in which the user appears.
  • category_featured - Featured videos.
  • channel - Channel videos.
  • facebook_feed - Videos from the user’s Facebook feed.
  • following - Videos from accounts that the user follows.
  • group - Group videos.
  • likes - Liked videos.
  • ondemand_publish - On Demand videos.
  • share - Shared videos.
  • tagged_with - Tagged videos.
  • twitter_timeline - Videos from the user’s Twitter timeline.
  • uploads - Uploaded videos.

Responses

200

The videos were returned.

GET /me/feed
GET /users/{user_id}/feed

This method returns every video in the authenticated user’s feed.

operationId: get_feed

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

offset query optional string

The pagination offset. We recommend that you use the pagination links in the feed response instead of working with this value directly. For more details, see our pagination documentation.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

type query optional string

The feed type.

Option descriptions:

  • appears - Videos in which the user appears.
  • category_featured - Featured videos.
  • channel - Channel videos.
  • facebook_feed - Videos from the user’s Facebook feed.
  • following - Videos from accounts that the user follows.
  • group - Group videos.
  • likes - Liked videos.
  • ondemand_publish - On Demand videos.
  • share - Shared videos.
  • tagged_with - Tagged videos.
  • twitter_timeline - Videos from the user’s Twitter timeline.
  • uploads - Uploaded videos.

Responses

200

The videos were returned.

GET /users/{user_id}/feed

Users\followers 6 endpoints

GET /me/followers

This method returns every follower of the authenticated user.

operationId: UsersFollowers_listAll

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date followed.

Responses

200

The user’s followers were returned.

GET /me/followers
GET /me/following

This method returns every user that the authenticated user is following.

operationId: UsersFollowers_listOfFollowingUsers

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • online - Return users who are currently online.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date followed.

Responses

200

The followed users were returned.

GET /me/following
GET /me/following/{follow_user_id}

This method determines whether the authenticated user is a follower of the specified user.

operationId: UsersFollowers_checkFollowingUser

Parameters

Name In Required Type Description
follow_user_id path required number

The ID of the user to follow.

Responses

204

The authenticated user follows the specified user.

404

The authenticated user doesn’t follow the specified user.

GET /me/following/{follow_user_id}
GET /users/{user_id}/followers

This method returns every follower of the authenticated user.

operationId: get_followers

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date followed.

Responses

200

The user’s followers were returned.

GET /users/{user_id}/followers
GET /users/{user_id}/following

This method returns every user that the authenticated user is following.

operationId: UsersFollowers_listOfFollowedUsers

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • online - Return users who are currently online.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date followed.

Responses

200

The followed users were returned.

GET /users/{user_id}/following
GET /users/{user_id}/following/{follow_user_id}

This method determines whether the authenticated user is a follower of the specified user.

operationId: UsersFollowers_checkFollowingStatus

Parameters

Name In Required Type Description
follow_user_id path required number

The ID of the user to follow.

user_id path required number

The ID of the user.

Responses

204

The authenticated user follows the specified user.

404

The authenticated user doesn’t follow the specified user.

GET /users/{user_id}/following/{follow_user_id}

Users\pictures 4 endpoints

GET /me/pictures

This method returns every portrait image belonging to the authenticated user.

operationId: UsersPictures_list

Parameters

Name In Required Type Description
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The portrait images were returned.

GET /me/pictures
GET /me/pictures/{portraitset_id}

This method returns a single portrait image belonging to the authenticated user.

operationId: UsersPictures_getSpecificPictureBelongingToUser

Parameters

Name In Required Type Description
portraitset_id path required number

The ID of the picture.

Responses

200

The portrait image was returned.

GET /me/pictures/{portraitset_id}
GET /users/{user_id}/pictures

This method returns every portrait image belonging to the authenticated user.

operationId: get_pictures

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The portrait images were returned.

GET /users/{user_id}/pictures
GET /users/{user_id}/pictures/{portraitset_id}

This method returns a single portrait image belonging to the authenticated user.

operationId: get_picture

Parameters

Name In Required Type Description
portraitset_id path required number

The ID of the picture.

user_id path required number

The ID of the user.

Responses

200

The portrait image was returned.

GET /users/{user_id}/pictures/{portraitset_id}

Users\watchhistory 1 endpoints

GET /me/watched/videos

This method returns every video on the authenticated user’s watch history. This endpoint is deprecated. Any request to it returns empty data with HTTP status code 200.

operationId: UsersWatchHistory_getWatchedVideos

Parameters

Name In Required Type Description
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The videos were returned.

403

The authenticated user can’t view another user’s watch history.

GET /me/watched/videos

Videos\animatedthumbnails 3 endpoints

GET /videos/{video_id}/animated_thumbsets

This method returns all the sets of animated thumbnails associated with the specified video. The authenticated user must be the owner of the video.

operationId: VideosAnimatedThumbnails_getAllSets

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The sets of animated thumbnails were returned.

404
  • Error code 5001: The authenticated user doesn’t own the video.
  • Error code 5017: No such set of animated thumbnails exists.
GET /videos/{video_id}/animated_thumbsets
GET /videos/{video_id}/animated_thumbsets/{picture_id}

This method returns a particular set of animated thumbnails associated with the specified video. The authenticated user must be the owner of the video.

operationId: VideosAnimatedThumbnails_specificSetGet

Parameters

Name In Required Type Description
picture_id path required string

The UUID of the set of animated thumbnails.

video_id path required number

The ID of the video.

Responses

200

The set of animated thumbnails was returned.

404
  • Error code 5001: The authenticated user doesn’t own the video.
  • Error code 5017: No such set of animated thumbnails exists.
GET /videos/{video_id}/animated_thumbsets/{picture_id}
GET /videos/{video_id}/animated_thumbsets/{picture_id}/status

This method returns the status of a particular set of animated thumbnails associated with the specified video. The status indicates whether the thumbnails are ready to use. The authenticated user must be the owner of the video.

operationId: VideosAnimatedThumbnails_getStatusOfSet

Parameters

Name In Required Type Description
picture_id path required string

The UUID of the set of animated thumbnails.

video_id path required number

The ID of the video.

Responses

200

The status of the set of animated thumbnails was returned.

404
  • Error code 5001: The authenticated user doesn’t own the video.
  • Error code 5017: No such set of animated thumbnails exists.
GET /videos/{video_id}/animated_thumbsets/{picture_id}/status

Videos\chapters 5 endpoints

GET /videos/{video_id}/chapters

This method returns every chapter of the specified video.

operationId: get_chapters

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The chapters were returned.

404

No such video exists.

GET /videos/{video_id}/chapters
GET /videos/{video_id}/chapters/temporary/pictures/{uid}

This method returns the specified thumbnail associated with an unsaved video chapter.

operationId: VideosChapters_getSingleChapterThumbnail

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The chapter thumbnail was returned.

404
  • No such video or chapter exists.
  • Error code 5020: The specified chapter doesn’t exist.
  • Error code 5021: The specified chapter belongs to a different video.
GET /videos/{video_id}/chapters/temporary/pictures/{uid}
GET /videos/{video_id}/chapters/{chapter_id}

This method returns a single chapter of the specified video.

operationId: get_chapter

Parameters

Name In Required Type Description
chapter_id path required number

The ID of the chapter.

video_id path required number

The ID of the video.

Responses

200

The chapter was returned.

404
  • No such video or chapter exists.
  • Error code 5020: The specified chapter doesn’t exist.
  • Error code 5021: The specified chapter belongs to a different video.
GET /videos/{video_id}/chapters/{chapter_id}
GET /videos/{video_id}/chapters/{chapter_id}/pictures

This method returns every thumbnail associated with the specified saved video chapter.

operationId: VideosChapters_getChapterThumbnails

Parameters

Name In Required Type Description
chapter_id path required number

The ID of the chapter.

video_id path required number

The ID of the video.

Responses

200

The chapter thumbnails were returned.

403
  • The authenticated user can’t perform this action.
  • Error code 2204: The request contains errors.
GET /videos/{video_id}/chapters/{chapter_id}/pictures
GET /videos/{video_id}/chapters/{chapter_id}/pictures/{uid}

This method returns the specified thumbnail associated with a saved video chapter.

operationId: VideosChapters_getSingleChapterThumbnail

Parameters

Name In Required Type Description
chapter_id path required number

The ID of the chapter.

video_id path required number

The ID of the video.

Responses

200

The chapter thumbnail was returned.

404
  • No such video or chapter exists.
  • Error code 5020: The specified chapter doesn’t exist.
  • Error code 5021: The specified chapter belongs to a different video.
GET /videos/{video_id}/chapters/{chapter_id}/pictures/{uid}

Videos\contentratings 1 endpoints

GET /contentratings

This method returns all available content ratings.

operationId: VideosContentRatings_getAllContentRatings

Responses

200

The content ratings were returned.

GET /contentratings

Videos\creativecommons 1 endpoints

GET /creativecommons

This method returns all available Creative Commons licenses.

operationId: VideosCreativeCommons_getAllCCLicenses

Parameters

Name In Required Type Description
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The Creative Commons licenses were returned.

GET /creativecommons

Videos\credits 4 endpoints

GET /channels/{channel_id}/videos/{video_id}/credits

This method returns every credited user in a video.

operationId: VideosCredits_getAllCreditedUsersInVideo

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.

Responses

200

The credited users were returned.

GET /channels/{channel_id}/videos/{video_id}/credits
GET /videos/{video_id}/credits

This method returns every credited user in a video.

operationId: VideosCredits_getAllCreditedUsersInVideo

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date.

Responses

200

The credited users were returned.

GET /videos/{video_id}/credits
GET /videos/{video_id}/credits/available_users

This method returns the users who can be credited on the specified video.

operationId: available_users

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • date - Sort the results by date followed.

Responses

200

The users who can be credited were returned.

GET /videos/{video_id}/credits/available_users
GET /videos/{video_id}/credits/{credit_id}

This method returns a single credited user in a video.

operationId: VideosCredits_getSpecificCreditedUser

Parameters

Name In Required Type Description
credit_id path required number

The ID of the credit.

video_id path required number

The ID of the video.

Responses

200

The credit was returned.

404

No such video or credit exists.

GET /videos/{video_id}/credits/{credit_id}

Videos\embedprivacy 1 endpoints

GET /videos/{video_id}/privacy/domains

This method returns every domain on the specified video’s whitelist.

operationId: VideosEmbedPrivacy_listWhitelistDomains

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The domains were returned.

403

There are no domains on which the video can be embedded.

GET /videos/{video_id}/privacy/domains

Videos\essentials 8 endpoints

GET /me/appearances

This method returns all the videos in which the authenticated user has a credited appearance.

operationId: VideosEssentials_getUserAppearances

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by date.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

GET /me/appearances
GET /me/videos

This method returns all the videos that the authenticated user has uploaded.

operationId: VideosEssentials_getAllUserVideos

Parameters

Name In Required Type Description
containing_uri query optional string

The page that contains the video URI. The field is available only when not paired with query.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • app_only - Return app-only videos.
  • embeddable - Return embeddable videos.
  • featured - Return featured videos.
  • live - Return only live videos.
  • no_placeholder - Return no placeholder videos.
  • nolive - Return no live videos.
  • playable - Return playable videos.
  • screen_recorded - Return screen-recorded videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

filter_playable query optional boolean

Whether to filter the results by playable videos (true) or non-playable videos (false).

filter_screen_recorded query optional boolean

Whether to filter the results by screen-recorded videos (true) or non-screen-recorded videos (false).

filter_tag query optional string

A comma-separated list of tags to filter on. All results must include at least one of these tags.

filter_tag_all_of query optional string

A comma-separated list of tags to filter on. All results must include all of these tags.

filter_tag_exclude query optional string

A comma-separated list of tags to exclude. All results must exclude all of these tags.

include_team_content query optional string

Whether to include content from the user’s teams when searching. This field is deprecated.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

query_fields query optional array

A comma-separated list of fields to query over. The default value is title,description,chapters,tags.

Option descriptions:

  • chapters - Query by chapter titles that have been added to the video.
  • description - Query by the description of the video.
  • tags - Query by tag names that have been added to the video.
  • title - Query by the title of the video.
sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically by title.
  • date - Sort the results by date.
  • default - Use the default sorting method.
  • duration - Sort the results by duration.
  • last_user_action_event_date - Sort the results by last user interaction. If a result hasn’t had an interaction, the upload date is used instead.
  • likes - Sort the results by number of likes. To use this option, direction must be desc.
  • modified_time - Sort the results by last modification.
  • plays - Sort the results by number of plays. To use this option, direction must be desc.

Responses

200

The videos were returned.

304

The authenticated user hasn’t uploaded any videos since the given If-Modified-Since header.

GET /me/videos
GET /me/videos/{video_id}

This method determines whether the authenticated user is the owner of the specified video.

operationId: VideosEssentials_checkUserOwnsVideo

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The authenticated user owns the video.

404

The authenticated user doesn’t own the video.

GET /me/videos/{video_id}
GET /users/{user_id}/appearances

This method returns all the videos in which the authenticated user has a credited appearance.

operationId: get_appearances

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by date.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

GET /users/{user_id}/appearances
GET /users/{user_id}/videos

This method returns all the videos that the authenticated user has uploaded.

operationId: get_videos

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

containing_uri query optional string

The page that contains the video URI. The field is available only when not paired with query.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • app_only - Return app-only videos.
  • embeddable - Return embeddable videos.
  • featured - Return featured videos.
  • live - Return only live videos.
  • no_placeholder - Return no placeholder videos.
  • nolive - Return no live videos.
  • playable - Return playable videos.
  • screen_recorded - Return screen-recorded videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

filter_playable query optional boolean

Whether to filter the results by playable videos (true) or non-playable videos (false).

filter_screen_recorded query optional boolean

Whether to filter the results by screen-recorded videos (true) or non-screen-recorded videos (false).

filter_tag query optional string

A comma-separated list of tags to filter on. All results must include at least one of these tags.

filter_tag_all_of query optional string

A comma-separated list of tags to filter on. All results must include all of these tags.

filter_tag_exclude query optional string

A comma-separated list of tags to exclude. All results must exclude all of these tags.

include_team_content query optional string

Whether to include content from the user’s teams when searching. This field is deprecated.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

query_fields query optional array

A comma-separated list of fields to query over. The default value is title,description,chapters,tags.

Option descriptions:

  • chapters - Query by chapter titles that have been added to the video.
  • description - Query by the description of the video.
  • tags - Query by tag names that have been added to the video.
  • title - Query by the title of the video.
sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically by title.
  • date - Sort the results by date.
  • default - Use the default sorting method.
  • duration - Sort the results by duration.
  • last_user_action_event_date - Sort the results by last user interaction. If a result hasn’t had an interaction, the upload date is used instead.
  • likes - Sort the results by number of likes. To use this option, direction must be desc.
  • modified_time - Sort the results by last modification.
  • plays - Sort the results by number of plays. To use this option, direction must be desc.

Responses

200

The videos were returned.

304

The authenticated user hasn’t uploaded any videos since the given If-Modified-Since header.

GET /users/{user_id}/videos
GET /users/{user_id}/videos/{video_id}

This method determines whether the authenticated user is the owner of the specified video.

operationId: VideosEssentials_checkUserOwnership

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

video_id path required number

The ID of the video.

Responses

200

The authenticated user owns the video.

404

The authenticated user doesn’t own the video.

GET /users/{user_id}/videos/{video_id}
GET /videos

This method returns all the videos that match custom search criteria.

operationId: search_videos

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results. CC and related filters target videos with the corresponding Creative Commons licenses. For more information, see our Creative Commons page.

Option descriptions:

  • CC - Return videos under any Creative Commons license.
  • CC-BY - Return CC BY, or attribution-only, videos.
  • CC-BY-NC - Return CC BY-NC, or Attribution-NonCommercial, videos.
  • CC-BY-NC-ND - Return CC BY-NC-ND, or Attribution-NonCommercial-NoDerivs, videos.
  • CC-BY-NC-SA - Return CC BY-NC-SA, or Attribution-NonCommercial-ShareAlike, videos.
  • CC-BY-ND - Return CC BY-ND, or Attribution-NoDerivs, videos.
  • CC-BY-SA - Return CC BY-SA, or Attribution-ShareAlike, videos.
  • CC0 - Return CC0, or public domain, videos.
  • categories - Filter by categories.
  • duration - Filter by duration.
  • in-progress - Return in-progress videos.
  • minimum_likes - Filter by minimum likes.
  • trending - Return trending videos.
  • upload_date - Filter by upload date.
links query optional string

A comma-separated list of video URLs to find. Querying, filtering, and sorting aren’t supported when using this field.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by date.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • plays - Sort the results by number of plays.
  • relevant - Sort the results by relevance.
uris query optional string

A comma-separated list of video URIs to find. Querying, filtering, and sorting aren’t supported when using this field.

Responses

200

The search results were returned.

400
  • Error code 2101: Either the uris or links parameter has filtering or sorting arguments.
  • Error code 2204: A problem occurred with the batch request.
503
  • Search is disabled.
  • Error code 7300: An internal search error occurred.
GET /videos
GET /videos/{video_id}

This method returns a single video.

operationId: get_video

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The video was returned.

404

No such video exists.

GET /videos/{video_id}

Videos\fragments 1 endpoints

GET /videos/{video_id}/fragments

This method returns all of the fragments associated with the specified video.

operationId: get_fragments

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The fragments were returned.

GET /videos/{video_id}/fragments

Videos\languages 1 endpoints

GET /languages

This method returns all available video languages.

operationId: get_languages

Parameters

Name In Required Type Description
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • audiotracks - Return languages that can be used for audio tracks.
  • texttracks - Return languages that can be used for text tracks.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The languages were returned.

GET /languages

Videos\livem3u8playback 2 endpoints

GET /me/videos/{video_id}/m3u8_playback

This method returns an M3U8 playback URL for the specified event stream. You should use this endpoint only in conjunction with our recommended procedure for playing events via HLS. For more information, see our HLS guide.

operationId: VideosLiveM3U8Playback_getPlaybackUrl

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The M3U8 playback URL was returned.

401

Error code 8000: The user credentials are invalid.

403

Error code 3200: The authenticated user can’t access the M3U8 playback URL.

404

Error code 5000: No such event or user exists.

GET /me/videos/{video_id}/m3u8_playback
GET /users/{user_id}/videos/{video_id}/m3u8_playback

This method returns an M3U8 playback URL for the specified event stream. You should use this endpoint only in conjunction with our recommended procedure for playing events via HLS. For more information, see our HLS guide.

operationId: VideosLiveM3U8Playback_getPlaybackUrlForEventStream

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

video_id path required number

The ID of the video.

Responses

200

The M3U8 playback URL was returned.

401

Error code 8000: The user credentials are invalid.

403

Error code 3200: The authenticated user can’t access the M3U8 playback URL.

404

Error code 5000: No such event or user exists.

GET /users/{user_id}/videos/{video_id}/m3u8_playback

Videos\nondestructivetrimming 1 endpoints

GET /videos/{video_id}/trim

This method returns the status of the trim operation for the specified video.

operationId: clip_trim

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The status of the trim operation was returned or updated.

401

Error code 8003: The user credentials are invalid.

403

Error code 3411: The authenticated user is unverified.

GET /videos/{video_id}/trim

Videos\recommendations 1 endpoints

GET /videos/{video_id}/videos

This method returns every related video of the specified video.

operationId: VideosRecommendations_getRelatedVideos

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • related - Return related videos.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The related videos were returned.

400

The value of filter isn’t related.

GET /videos/{video_id}/videos

Videos\showcases 1 endpoints

GET /videos/{video_id}/albums

This method returns all the showcases that contain the specified video.

operationId: VideosShowcases_getAllContShowcases

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The showcases were returned.

404

Error code 3433: No such video exists.

GET /videos/{video_id}/albums

Videos\tags 3 endpoints

GET /tags/{word}/videos

This method returns all the public videos associated with the specified tag.

operationId: VideosTags_getAllByTag

Parameters

Name In Required Type Description
word path required string

The tag word.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

sort query optional string

The way to sort the results.

Option descriptions:

  • created_time - Sort the results by creation time.
  • duration - Sort the results by duration.
  • name - Sort the results by name.

Responses

200

The videos were returned.

404

No such tag exists.

GET /tags/{word}/videos
GET /videos/{video_id}/tags

This method returns all the tags associated with the specified video. The authenticated user must be the owner of the video.

operationId: VideosTags_getVideoTags

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The tags were returned.

GET /videos/{video_id}/tags
GET /videos/{video_id}/tags/{word}

This method determines whether the specified tag has been added to a video. The authenticated user must be the owner of the video.

operationId: VideosTags_checkTagVideo

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

word path required string

The tag word.

Responses

200

The tag has been added to the video.

400
  • A parameter is invalid.
  • The tag is invalid.
404

The video has no such tag.

GET /videos/{video_id}/tags/{word}

Videos\texttracks 3 endpoints

GET /channels/{channel_id}/videos/{video_id}/texttracks

This method returns every text track of the specified video. The authenticated user must be the owner of the video.

operationId: VideosTextTracks_getAllTracks

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The text tracks were returned.

404

No such video exists.

GET /channels/{channel_id}/videos/{video_id}/texttracks
GET /videos/{video_id}/texttracks

This method returns every text track of the specified video. The authenticated user must be the owner of the video.

operationId: VideosTextTracks_getAllVideoTracks

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The text tracks were returned.

404

No such video exists.

GET /videos/{video_id}/texttracks
GET /videos/{video_id}/texttracks/{texttrack_id}

This method returns a single text track of the specified video. The authenticated user must be the owner of the video.

operationId: VideosTextTracks_getSpecificTextTrack

Parameters

Name In Required Type Description
texttrack_id path required number

The ID of the text track.

video_id path required number

The ID of the video.

Responses

200

The text track was returned.

403
  • Error code 3430: The authenticated user doesn’t have permission to access the text track.
  • Error code 3431: This text track is disabled.
404
  • No such video or text track exists.
  • Error code 5014: The specified text track doesn’t exist.
  • Error code 5015: The specified text track belongs to a different video.
GET /videos/{video_id}/texttracks/{texttrack_id}

Videos\thumbnails 3 endpoints

GET /channels/{channel_id}/videos/{video_id}/pictures

This method returns all thumbnail images of the specified video. The authenticated user must have team permissions for the video.

operationId: VideosThumbnails_getAllByVideoId

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The thumbnails were returned.

GET /channels/{channel_id}/videos/{video_id}/pictures
GET /videos/{video_id}/pictures

This method returns all thumbnail images of the specified video. The authenticated user must have team permissions for the video.

operationId: VideosThumbnails_getAllByVideoId

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The thumbnails were returned.

GET /videos/{video_id}/pictures
GET /videos/{video_id}/pictures/{picture_id}

This method returns a single thumbnail image from the specified video. The authenticated user must have team permissions for the video.

operationId: VideosThumbnails_getThumbnailFromVideo

Parameters

Name In Required Type Description
picture_id path required number

The ID of the thumbnail.

video_id path required number

The ID of the video.

Responses

200

The thumbnail was returned.

GET /videos/{video_id}/pictures/{picture_id}

Videos\transcripts 1 endpoints

GET /videos/{video_id}/transcripts/{texttrack_id}

This method returns the transcript segments of the specified text track.

operationId: get_transcript

Parameters

Name In Required Type Description
texttrack_id path required number

The ID of the text track.

video_id path required number

The ID of the video.

Responses

200

The transcript segments were returned.

404
  • Error code 2: The specified video doesn’t exist.
  • Error code 5014: The specified text track doesn’t exist.
  • Error code 5022: The specified transcript doesn’t exist.
GET /videos/{video_id}/transcripts/{texttrack_id}

Videos\unlistedvideos 2 endpoints

GET /channels/{channel_id}/videos/{video_id}/privacy/users

This method returns every user who has access to the specified unlisted video.

operationId: VideosUnlistedVideos_listAccessibleUsers

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The users were returned.

400

No users can access this unlisted video.

GET /channels/{channel_id}/videos/{video_id}/privacy/users
GET /videos/{video_id}/privacy/users

This method returns every user who has access to the specified unlisted video.

operationId: VideosUnlistedVideos_listAccessibleUsers

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The users were returned.

400

No users can access this unlisted video.

GET /videos/{video_id}/privacy/users

Videos\uploads 1 endpoints

GET /users/{user_id}/uploads/{upload_id}

This method returns the specified upload attempt of the authenticated user. This method has been deprecated. For information on our currently supported upload approaches, see our Working with Video Uploads guide.

operationId: VideosUploads_getUploadAttempt

Parameters

Name In Required Type Description
upload_id path required number

The ID of the upload attempt.

user_id path required number

The ID of the user.

Responses

200

The upload attempt was returned.

GET /users/{user_id}/uploads/{upload_id}

Videos\versions 3 endpoints

GET /channels/{channel_id}/videos/{video_id}/versions

This method returns every version of the specified video. The authenticated user must be the owner of the video.

operationId: VideosVersions_getAllVideoVersions

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The versions were returned.

401

Error code 8003: The user credentials are invalid.

404

No such video exists.

GET /channels/{channel_id}/videos/{video_id}/versions
GET /videos/{video_id}/versions

This method returns every version of the specified video. The authenticated user must be the owner of the video.

operationId: VideosVersions_getAllVideoVersions

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The versions were returned.

401

Error code 8003: The user credentials are invalid.

404

No such video exists.

GET /videos/{video_id}/versions
GET /videos/{video_id}/versions/{version_id}

This method returns a single version of the specified video. The authenticated user must be the owner of the video.

operationId: VideosVersions_getSpecificVersion

Parameters

Name In Required Type Description
version_id path required number

The ID of the video version.

video_id path required number

The ID of the video.

Responses

200

The video version was returned.

404
  • No such video exists.
  • Error code 3200: The authenticated user can’t access the versions of this video.
  • Error code 8003: The user credentials are invalid.
GET /videos/{video_id}/versions/{version_id}

Videos\videocomments 4 endpoints

GET /channels/{channel_id}/videos/{video_id}/comments

This method returns every video comment on the specified video.

operationId: VideosVideoComments_getAllReplies

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The comments were returned.

GET /channels/{channel_id}/videos/{video_id}/comments
GET /videos/{video_id}/comments

This method returns every video comment on the specified video.

operationId: get_comments

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The comments were returned.

GET /videos/{video_id}/comments
GET /videos/{video_id}/comments/{comment_id}

This method returns the specified video comment.

operationId: get_comment

Parameters

Name In Required Type Description
comment_id path required number

The ID of the comment.

video_id path required number

The ID of the video.

Responses

200

The comment was returned.

404

No such video or comment exists.

GET /videos/{video_id}/comments/{comment_id}
GET /videos/{video_id}/comments/{comment_id}/replies

This method returns every reply to the specified video comment.

operationId: VideosVideoComments_getAllReplies

Parameters

Name In Required Type Description
comment_id path required number

The ID of the comment.

video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

Responses

200

The replies were returned.

404

No such video or comment exists.

GET /videos/{video_id}/comments/{comment_id}/replies

Watchlaterqueue\essentials 4 endpoints

GET /me/watchlater

This method returns every video from the authenticated user’s Watch Later queue.

operationId: WatchLaterQueueEssentials_getVideosInQueue

Parameters

Name In Required Type Description
direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by date added.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

304

The user hasn’t added any videos to their Watch Later queue since the given If-Modified-Since header.

GET /me/watchlater
GET /me/watchlater/{video_id}

This method checks the authenticated user’s Watch Later queue for the specified video.

operationId: WatchLaterQueueEssentials_checkVideoInQueue

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The video is in the user’s Watch Later queue.

404

The video isn’t in the user’s Watch Later queue.

GET /me/watchlater/{video_id}
GET /users/{user_id}/watchlater

This method returns every video from the authenticated user’s Watch Later queue.

operationId: WatchLaterQueueEssentials_listUserQueueVideos

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

direction query optional string

The sort direction of the results.

Option descriptions:

  • asc - Sort the results in ascending order.
  • desc - Sort the results in descending order.
filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • embeddable - Return embeddable videos.
filter_embeddable query optional boolean

Whether to filter the results by embeddable videos (true) or non-embeddable videos (false). This parameter is required only when filter is embeddable.

page query optional number

The page number of the results to show.

per_page query optional number

The number of items to show on each page of results, up to a maximum of 100.

query query optional string

The search query to use to filter the results.

sort query optional string

The way to sort the results.

Option descriptions:

  • alphabetical - Sort the results alphabetically.
  • comments - Sort the results by number of comments.
  • date - Sort the results by date added.
  • duration - Sort the results by duration.
  • likes - Sort the results by number of likes.
  • plays - Sort the results by number of plays.

Responses

200

The videos were returned.

304

The user hasn’t added any videos to their Watch Later queue since the given If-Modified-Since header.

GET /users/{user_id}/watchlater
GET /users/{user_id}/watchlater/{video_id}

This method checks the authenticated user’s Watch Later queue for the specified video.

operationId: WatchLaterQueueEssentials_checkVideoInQueue

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

video_id path required number

The ID of the video.

Responses

200

The video is in the user’s Watch Later queue.

404

The video isn’t in the user’s Watch Later queue.

GET /users/{user_id}/watchlater/{video_id}

Schemas

object AuthenticationExtrasConvertOAuth1ToOAuth2Request
{
  "type": "object",
  "required": [
    "grant_type",
    "token",
    "token_secret"
  ],
  "properties": {
    "token": {
      "type": "string",
      "example": "58037c0078d5f54e15e638cc0dd882a570b13c50",
      "description": "The OAuth 1 token."
    },
    "grant_type": {
      "enum": [
        "vimeo_oauth1"
      ],
      "type": "string",
      "description": "The grant type. The value of this field must be `vimeo_oauth1`."
    },
    "token_secret": {
      "type": "string",
      "example": "NTgwMzdjMDA3OGQ1ZjU0ZTE1ZTYzOGNjMGRkODgyYTU3MGIxM2M1MA==",
      "description": "The OAuth 1 token secret."
    }
  }
}
object AuthenticationExtrasExchangeOAuthCodeExchangeRequest
{
  "type": "object",
  "required": [
    "code",
    "grant_type",
    "redirect_uri"
  ],
  "properties": {
    "code": {
      "type": "string",
      "example": "1234abcd",
      "description": "The authorization code received from the authorization server."
    },
    "grant_type": {
      "enum": [
        "authorization_code"
      ],
      "type": "string",
      "description": "The grant type. The value of this field must be `authorization_code`."
    },
    "redirect_uri": {
      "type": "string",
      "example": "https://example.com",
      "description": "The redirect URI. The value of this field must match the URI from `/oauth/authorize`."
    }
  }
}
array AvailableUsersResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/user"
  }
}
array CategoriesChannelsListInCategoryResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/channel"
  }
}
array CategoriesGroupsGetAllGroupsResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/group"
  }
}
array CategoriesUsersListFollowedCategories200Response
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/category"
  }
}
array CategoriesUsersListFollowedCategoriesResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/category"
  }
}
array CategoriesVideosGetAllVideoCategoriesResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/category"
  }
}
array CategoriesVideosListVideosInCategoryResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/video"
  }
}
object CategoriesVideosSetVideoCategoriesRequest
{
  "type": "object",
  "required": [
    "category"
  ],
  "properties": {
    "category": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "An array of the names of the desired categories."
    }
  }
}
object ChannelsCategoriesAddChannelToMultipleCategoriesRequest
{
  "type": "object",
  "required": [
    "channels"
  ],
  "properties": {
    "channels": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The array of category URIs to add."
    }
  }
}
array ChannelsCategoriesGetBelongingCategoriesResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/category"
  }
}
array ChannelsEssentialsGetUserSubscriptions200Response
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/channel"
  }
}
array ChannelsEssentialsGetUserSubscriptionsResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/channel"
  }
}
array ChannelsModeratorsListByChannelResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/user"
  }
}
object ChannelsModeratorsRemoveMultipleFromChannelRequest
{
  "type": "object",
  "required": [
    "user_uri"
  ],
  "properties": {
    "user_uri": {
      "type": "string",
      "example": "/users/152184",
      "description": "The URI of a user to remove as a moderator."
    }
  }
}
object ChannelsModeratorsReplaceModeratorsRequest
{
  "type": "object",
  "required": [
    "user_uri"
  ],
  "properties": {
    "user_uri": {
      "type": "string",
      "example": "/users/152184",
      "description": "The URI of the user to add as a moderator."
    }
  }
}
array ChannelsModeratorsReplaceModeratorsResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/user"
  }
}
array ChannelsPrivateChannelMembersGetAccessibleUsersResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/user"
  }
}
object ChannelsPrivateChannelMembersPermitUserAccessRequest
{
  "type": "object",
  "required": [
    "users"
  ],
  "properties": {
    "users": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The array of either the user URIs or the user IDs to permit to access the private channel."
    }
  }
}
array ChannelsPrivateChannelMembersPermitUserAccessResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/user"
  }
}
array ChannelsSubscriptionsAndSubscribersListChannelFollowersResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/user"
  }
}
array ChannelsTagsAddMultipleTagsToChannelRequest
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "name"
    ],
    "properties": {
      "name": {
        "type": "string",
        "description": "The name of the tag to assign."
      }
    }
  }
}
array ChannelsTagsAddMultipleTagsToChannelResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/tag"
  }
}
array ChannelsTagsGetAllChannelTagsResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/tag"
  }
}
object ChannelsVideosAddMultipleToChannelRequest
{
  "type": "object",
  "required": [
    "video_uri"
  ],
  "properties": {
    "video_uri": {
      "type": "string",
      "example": "/videos/258684937",
      "description": "A member of an array representing the URIs of the videos to add. For each member in the array, use the format `{\"video_uri\":\"x\"}` where **x** is a video URI. For more information on batch requests like this, see [Using Common Formats and Parameters](https://developer.vimeo.com/api/common-formats#working-with-batch-requests)."
    }
  }
}
array ChannelsVideosGetAccessibleChannelsResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/channel"
  }
}
array ChannelsVideosListInChannelResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/video"
  }
}
object ChannelsVideosRemoveMultipleFromChannelRequest
{
  "type": "object",
  "required": [
    "video_uri"
  ],
  "properties": {
    "video_uri": {
      "type": "string",
      "example": "/videos/258684937",
      "description": "The URI of a video to remove."
    }
  }
}
object ClientAuthRequest
{
  "type": "object",
  "required": [
    "grant_type",
    "scope"
  ],
  "properties": {
    "scope": {
      "type": "string",
      "example": "public",
      "description": "A space-separated list of the authentication scopes to access. The default is `public`."
    },
    "grant_type": {
      "enum": [
        "client_credentials"
      ],
      "type": "string",
      "description": "The grant type. The value of this field must be `client_credentials`."
    }
  }
}
object ClipTrimRequest
{
  "type": "object",
  "properties": {
    "trim_end": {
      "type": "string",
      "example": "2.0",
      "description": "The end position in seconds of the trim in the video."
    },
    "trim_start": {
      "type": "string",
      "example": "1.0",
      "description": "The start position in seconds of the trim in the video."
    }
  }
}
object CreateChannelRequest
{
  "type": "object",
  "required": [
    "name",
    "privacy"
  ],
  "properties": {
    "link": {
      "type": "string",
      "example": "staffpicks",
      "description": "The link to access the channel. You can use a custom name in the URL in place of a numeric channel ID, as in `/channels/{url_custom}`."
    },
    "name": {
      "type": "string",
      "example": "Vimeo Staff Picks",
      "description": "The name of the channel."
    },
    "privacy": {
      "enum": [
        "anybody",
        "moderators",
        "user"
      ],
      "type": "string",
      "description": "The privacy level of the channel.\n\nOption descriptions:\n * `anybody` - Anyone can access the channel.\n * `moderators` - Only moderators can access the channel.\n * `user` - Only moderators and designated users can access the channel.\n"
    },
    "description": {
      "type": "string",
      "example": "We really love videos, and these are the videos we really, really love.",
      "description": "The description of the channel."
    }
  }
}
object CreateChapterRequest
{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "example": "Chapter 1",
      "nullable": true,
      "description": "The title of the chapter."
    },
    "timecode": {
      "type": "number",
      "example": 140,
      "nullable": true,
      "description": "The timecode of the chapter in seconds from the start of the video."
    },
    "thumbnail_uris": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "An array of URIs of the thumbnails associated with the video chapter."
    },
    "active_thumbnail_uri": {
      "type": "string",
      "example": "/videos/12345678/chapters/12345/pictures/24kjh4h4g38175db9f59fae9f7g9ekhg",
      "description": "The URI of the chapter's active thumbnail."
    }
  }
}
object CreateCommentRequest
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "text": {
      "type": "string",
      "example": "I love this!",
      "description": "The text of the comment."
    }
  }
}
object CreateGroupRequest
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "Vimeo Weekend Challenge",
      "description": "The name of the group."
    },
    "description": {
      "type": "string",
      "example": "Want to participate in our weekly challenges? Join the group to receive messages and new challenges!",
      "description": "The description of the group."
    }
  }
}
object CreateProjectRequest
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "Rough cuts",
      "description": "The name of the folder."
    },
    "parent_folder_uri": {
      "type": "string",
      "example": "/users/12345/projects/6789",
      "description": "The URI of the parent folder."
    }
  }
}
object CreateShowcaseRequest
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "Vimeo Holiday Videos!",
      "description": "The name of the showcase."
    },
    "sort": {
      "enum": [
        "added_first",
        "added_last",
        "alphabetical",
        "arranged",
        "comments",
        "likes",
        "newest",
        "oldest",
        "plays"
      ],
      "type": "string",
      "description": "The default sort order of the videos as they appear in the showcase.\n\nOption descriptions:\n * `added_first` - The videos appear according to when they were added to the showcase, with the most recently added first.\n * `added_last` - The videos appear according to when they were added to the showcase, with the most recently added last.\n * `alphabetical` - The videos appear alphabetically by their title.\n * `arranged` - The videos appear as arranged by the owner of the showcase.\n * `comments` - The videos appear according to their number of comments.\n * `likes` - The videos appear according to their number of likes.\n * `newest` - The videos appear in chronological order with the newest first.\n * `oldest` - The videos appear in chronological order with the oldest first.\n * `plays` - The videos appear according to their number of plays.\n"
    },
    "theme": {
      "enum": [
        "dark",
        "standard"
      ],
      "type": "string",
      "description": "The color theme of the showcase.\n\nOption descriptions:\n * `dark` - The showcase uses the dark theme.\n * `standard` - The showcase uses the standard theme.\n"
    },
    "layout": {
      "enum": [
        "grid",
        "player"
      ],
      "type": "string",
      "description": "The type of layout for presenting the showcase.\n\nOption descriptions:\n * `grid` - The videos appear in a grid.\n * `player` - The videos appear in the player.\n"
    },
    "privacy": {
      "enum": [
        "anybody",
        "embed_only",
        "nobody",
        "password",
        "team",
        "unlisted"
      ],
      "type": "string",
      "description": "The privacy level of the showcase.\n\nOption descriptions:\n * `anybody` - Anyone can access the showcase, either on Vimeo or through an embed.\n * `embed_only` - The showcase doesn't appear on Vimeo, but it can be embedded on other sites.\n * `nobody` - No one can access the showcase, including the authenticated user.\n * `password` - Only those with the password can access the showcase.\n * `team` - Only members of the authenticated user's team can access the showcase.\n * `unlisted` - The showcase can't be accessed if the URL omits its unlisted hash.\n"
    },
    "hide_nav": {
      "type": "boolean",
      "example": true,
      "description": "Whether to hide Vimeo navigation when displaying the showcase."
    },
    "password": {
      "type": "string",
      "example": "hunter1",
      "description": "The showcase's password. This field is required only when **privacy** is `password`."
    },
    "brand_color": {
      "type": "string",
      "example": "ff66ee",
      "description": "The hexadecimal code for the color of the player buttons and showcase controls."
    },
    "description": {
      "type": "string",
      "example": "Vimeo holiday videos!",
      "description": "The description of the showcase."
    },
    "review_mode": {
      "type": "boolean",
      "example": true,
      "description": "Whether showcase videos use the review mode URL."
    },
    "hide_upcoming": {
      "type": "boolean",
      "example": false,
      "description": "Whether to include the upcoming event in the showcase."
    },
    "hide_from_vimeo": {
      "type": "boolean",
      "example": false,
      "description": "Whether the showcase should be hidden from Vimeo when unlisted."
    }
  }
}
object CreateVodRequest
{
  "type": "object",
  "required": [
    "content_rating",
    "description",
    "name",
    "type"
  ],
  "properties": {
    "buy": {
      "type": "object",
      "properties": {
        "price": {
          "type": "object",
          "properties": {
            "AUD": {
              "type": "number",
              "example": 2.99,
              "description": "The purchase price of the video in Australian dollars."
            },
            "CAD": {
              "type": "number",
              "example": 2.99,
              "description": "The purchase price of the video in Canadian dollars."
            },
            "CHF": {
              "type": "number",
              "example": 2.99,
              "description": "The purchase price of the video in Swiss francs."
            },
            "DKK": {
              "type": "number",
              "example": 2.99,
              "description": "The purchase price of the video in Danish krone."
            },
            "EUR": {
              "type": "number",
              "example": 2.99,
              "description": "The purchase price of the video in euros."
            },
            "GBP": {
              "type": "number",
              "example": 2.99,
              "description": "The purchase price of the video in British pounds."
            },
            "JPY": {
              "type": "number",
              "example": 2.99,
              "description": "The purchase price of the video in Japanese yen."
            },
            "KRW": {
              "type": "number",
              "example": 2.99,
              "description": "The purchase price of the video in South Korean won."
            },
            "NOK": {
              "type": "number",
              "example": 2.99,
              "description": "The purchase price of the video in Norwegian krone."
            },
            "PLN": {
              "type": "number",
              "example": 2.99,
              "description": "The purchase price of the video in Polish zloty."
            },
            "SEK": {
              "type": "number",
              "example": 2.99,
              "description": "The purchase price of the video in Swedish krona."
            },
            "USD": {
              "type": "number",
              "example": 2.99,
              "description": "When **type** is `film`, the purchase price of the video in United States dollars. When **type** is `series`, the purchase price of the entire collection in United States dollars."
            }
          }
        },
        "active": {
          "type": "boolean",
          "example": true,
          "description": "Whether the video can be purchased. This parameter is required when **rent.active** is `false`."
        },
        "download": {
          "type": "boolean",
          "example": true,
          "description": "Whether people who buy the video can download it. To use this parameter, **type** must be `film`."
        }
      }
    },
    "link": {
      "type": "string",
      "example": "darbyforever",
      "description": "The custom string to use in the Vimeo URL of the On Demand page."
    },
    "name": {
      "type": "string",
      "example": "Darby Forever",
      "description": "The name of the On Demand page."
    },
    "rent": {
      "type": "object",
      "properties": {
        "price": {
          "type": "object",
          "properties": {
            "AUD": {
              "type": "number",
              "example": 0.99,
              "description": "The rental price of the video in Australian dollars."
            },
            "CAD": {
              "type": "number",
              "example": 0.99,
              "description": "The rental price of the video in Canadian dollars."
            },
            "CHF": {
              "type": "number",
              "example": 0.99,
              "description": "The rental price of the video in Swiss francs."
            },
            "DKK": {
              "type": "number",
              "example": 0.99,
              "description": "The rental price of the video in Danish krone."
            },
            "EUR": {
              "type": "number",
              "example": 0.99,
              "description": "The rental price of the video in euros."
            },
            "GBP": {
              "type": "number",
              "example": 0.99,
              "description": "The rental price of the video in British pounds."
            },
            "JPY": {
              "type": "number",
              "example": 0.99,
              "description": "The rental price of the video in Japanese yen."
            },
            "KRW": {
              "type": "number",
              "example": 0.99,
              "description": "The rental price of the video in South Korean won."
            },
            "NOK": {
              "type": "number",
              "example": 0.99,
              "description": "The rental price of the video in Norwegian krone."
            },
            "PLN": {
              "type": "number",
              "example": 0.99,
              "description": "The rental price of the video in Polish zloty."
            },
            "SEK": {
              "type": "number",
              "example": 0.99,
              "description": "The rental price of the video in Swedish krona."
            },
            "USD": {
              "type": "number",
              "example": 0.99,
              "description": "When **type** is `film`, the rental price of the video in United States dollars. When **type** is `series`, the rental price of the entire collection in United States dollars."
            }
          }
        },
        "active": {
          "type": "boolean",
          "example": true,
          "description": "Whether the video can be rented. This parameter is required when **episodes.rent.active** is `true`."
        },
        "period": {
          "enum": [
            "1 week",
            "1 year",
            "24 hour",
            "3 month",
            "30 day",
            "48 hour",
            "6 month",
            "72 hour"
          ],
          "type": "string",
          "description": "The rental period of the video.\n\nOption descriptions:\n * `1 week` - The video can be rented for a maximum of 1 week.\n * `1 year` - The video can be rented for a maximum of 1 year.\n * `24 hour` - The video can be rented for a maximum of 24 hours.\n * `3 month` - The video can be rented for a maximum of 3 months.\n * `30 day` - The video can be rented for a maximum of 30 days.\n * `48 hour` - The video can be rented for a maximum of 48 hours.\n * `6 month` - The video can be rented for a maximum of 6 months.\n * `72 hour` - The video can be rented for a maximum of 72 hours.\n"
        }
      }
    },
    "type": {
      "enum": [
        "film",
        "series"
      ],
      "type": "string",
      "description": "The type of the On Demand page.\n\nOption descriptions:\n * `film` - The On Demand page is a film.\n * `series` - The On Demand page is a series.\n"
    },
    "episodes": {
      "type": "object",
      "properties": {
        "buy": {
          "type": "object",
          "properties": {
            "price": {
              "type": "object",
              "properties": {
                "USD": {
                  "type": "number",
                  "example": 1.99,
                  "description": "The purchase price per episode in United States dollars. This parameter is required when **episodes.buy.active** is `true`."
                }
              }
            },
            "active": {
              "type": "boolean",
              "example": true,
              "description": "Whether episodes can be purchased."
            },
            "download": {
              "type": "boolean",
              "example": true,
              "description": "Whether people who buy episodes can download them. To use this parameter, **type** must be `series`."
            }
          }
        },
        "rent": {
          "type": "object",
          "properties": {
            "price": {
              "type": "object",
              "properties": {
                "USD": {
                  "type": "number",
                  "example": 0.99,
                  "description": "The rental price per episode in United States dollars. This parameter is applicable only when **type** is `series`, and it's required when **episode.rent.active** is `true`."
                }
              }
            },
            "active": {
              "type": "boolean",
              "example": true,
              "description": "Whether episodes can be rented."
            },
            "period": {
              "enum": [
                "1 week",
                "1 year",
                "24 hour",
                "3 month",
                "30 day",
                "48 hour",
                "6 month",
                "72 hour"
              ],
              "type": "string",
              "description": "The rental period of the episode.\n\nOption descriptions:\n * `1 week` - The episode can be rented for a maximum of 1 week.\n * `1 year` - The episode can be rented for a maximum of 1 year.\n * `24 hour` - The episode can be rented for a maximum of 24 hours.\n * `3 month` - The episode can be rented for a maximum of 3 months.\n * `30 day` - The episode can be rented for a maximum of 30 days.\n * `48 hour` - The episode can be rented for a maximum of 48 hours.\n * `6 month` - The episode can be rented for a maximum of 6 months.\n * `72 hour` - The episode can be rented for a maximum of 72 hours.\n"
            }
          }
        }
      }
    },
    "description": {
      "type": "string",
      "example": "DARBY FOREVER follows the fantasies of Darby, a shopgirl at \"Bobbins & Notions\".",
      "description": "The description of the On Demand page."
    },
    "domain_link": {
      "type": "string",
      "example": "https://example.com",
      "description": "The custom domain of the On Demand page."
    },
    "subscription": {
      "type": "object",
      "properties": {
        "monthly": {
          "type": "object",
          "properties": {
            "price": {
              "type": "object",
              "properties": {
                "USD": {
                  "type": "number",
                  "example": 9.99,
                  "description": "The monthly subscription price in United States dollars. This parameter is required when **rent.active** and **buy.active** are `false`."
                }
              }
            },
            "active": {
              "type": "boolean",
              "example": true,
              "description": "Whether a monthly subscription is active. This parameter is required when **rent.active** and **buy.active** are `false`."
            }
          }
        }
      }
    },
    "content_rating": {
      "enum": [
        "drugs",
        "language",
        "nudity",
        "safe",
        "unrated",
        "violence"
      ],
      "type": "string",
      "description": "The content rating of the video, given either as a comma-separated list or as a JSON array, depending on the request format.\n\nOption descriptions:\n * `drugs` - The video contains drug or alcohol use.\n * `language` - The video contains profanity or sexually suggestive content.\n * `nudity` - The video contains nudity.\n * `safe` - The video is suitable for all audiences.\n * `unrated` - The video hasn't been rated.\n * `violence` - The video contains violent or graphic content.\n"
    },
    "accepted_currencies": {
      "enum": [
        "AUD",
        "CAD",
        "CHF",
        "DKK",
        "EUR",
        "GBP",
        "JPY",
        "KRW",
        "NOK",
        "PLN",
        "SEK",
        "USD"
      ],
      "type": "string",
      "description": "An array of accepted currencies.\n\nOption descriptions:\n * `AUD` - The currency is in Australian dollars.\n * `CAD` - The currency is in Canadian dollars.\n * `CHF` - The currency is in Swiss francs.\n * `DKK` - The currency is in Danish krone.\n * `EUR` - The currency is in euros.\n * `GBP` - The currency is in British pounds.\n * `JPY` - The currency is in Japanese yen.\n * `KRW` - The currency is in South Korean won.\n * `NOK` - The currency is in Norwegian krone.\n * `PLN` - The currency is in Polish zloty.\n * `SEK` - The currency is in Swedish krona.\n * `USD` - The currency is in United States dollars.\n"
    }
  }
}
object CreateWebinarRequest
{
  "type": "object",
  "required": [
    "title"
  ],
  "properties": {
    "title": {
      "type": "string",
      "example": "Interviews Daily",
      "description": "The title of the webinar."
    },
    "privacy": {
      "type": "object",
      "properties": {
        "view": {
          "enum": [
            "anybody",
            "nobody",
            "password",
            "team"
          ],
          "type": "string",
          "example": "anybody",
          "description": "The initial privacy of the webinar.\n\nOption descriptions:\n * `anybody` - Anyone can access the webinar. This privacy setting appears as `Public` on the Vimeo front end.\n * `nobody` - No one except the owner can access the webinar. This privacy setting appears as `Private` on the Vimeo front end.\n * `password` - Only those with the password can access the event.\n * `team` - Only members of the authenticated user's team can access the webinar.\n"
        },
        "embed": {
          "enum": [
            "private",
            "public",
            "whitelist"
          ],
          "type": "string",
          "example": "private",
          "description": "The initial embed privacy of the webinar.\n\nOption descriptions:\n * `private` - The webinar can't be embedded on any domain.\n * `public` - The webinar can be embedded on any domain.\n * `whitelist` - The webinar can be embedded on whitelisted domains only.\n"
        }
      },
      "description": "The privacy settings of the webinar."
    },
    "password": {
      "type": "string",
      "example": "gogo",
      "description": "The password when **privacy.view** is `password`. Anyone with the password can view the videos generated by streaming to the webinar event."
    },
    "schedule": {
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "single",
            "weekly"
          ],
          "type": "string",
          "example": "weekly",
          "description": "How often the webinar is expected to be live.\n\nOption descriptions:\n * `single` - The webinar is live one time only.\n * `weekly` - The webinar is live on a weekly basis. _This field is deprecated._\n"
        },
        "end_time": {
          "type": "string",
          "example": "2019-06-21T14:00:00+00:00",
          "description": "The time in ISO 8601 format when the webinar is expected to end, with support for different time offsets. This parameter is required when **schedule.type** is `single`."
        },
        "weekdays": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A non-empty array of weekdays on which the webinar is expected to be live. Weekdays can range from 1 to 7, where 1 is Monday and 7 is Sunday. This parameter is required when **schedule.type** is `weekly`. _This field is deprecated._"
        },
        "daily_time": {
          "type": "string",
          "example": "14:00:00Z",
          "description": "The time in ISO 8601 format when the webinar is expected to be live, with the zero UTC offset `Z`. This parameter is required when **schedule.type** is `weekly`. _This field is deprecated._"
        },
        "start_time": {
          "type": "string",
          "example": "2018-06-21T14:00:00+00:00",
          "description": "The time in ISO 8601 format when the webinar is expected to be live, with support for different time offsets. This parameter is required when **schedule.type** is `single`."
        }
      },
      "description": "Information about the time or times that the webinar is expected to be live."
    },
    "time_zone": {
      "type": "string",
      "example": "America/New_York",
      "description": "The time zone used in resolving the timestamps that are included in the automatically generated video titles for the webinar."
    },
    "folder_uri": {
      "type": "number",
      "example": 0,
      "description": "The URI of the webinar's folder."
    },
    "description": {
      "type": "string",
      "example": "In this episode, we interview a surprise guest",
      "description": "The description of the webinar."
    },
    "email_settings": {
      "type": "object",
      "properties": {
        "from": {
          "type": "string",
          "example": "Vimeo",
          "description": "The name of the sender for emails that are sent about the webinar. _This field is deprecated._"
        },
        "logo_uri": {
          "type": "string",
          "example": "/users/123/team_logos_2343",
          "description": "The URI of the logo image to include in emails that are sent about the webinar. _This field is deprecated._"
        },
        "custom_link": {
          "type": "string",
          "example": "https://xyz.com",
          "description": "The custom link for emails that are sent about the webinar. _This field is deprecated._"
        },
        "reply_email": {
          "type": "string",
          "example": "test@vimeo.com",
          "description": "The sender's reply email address. _This field is deprecated._"
        },
        "accent_color": {
          "type": "string",
          "example": "#000fff",
          "description": "The accent color scheme for emails that are sent about the webinar. _This field is deprecated._"
        },
        "sender_address": {
          "type": "string",
          "example": "Bangalore, India",
          "description": "The sender's physical address. _This field is deprecated._"
        },
        "use_custom_link": {
          "type": "boolean",
          "example": false,
          "description": "Whether to include a custom link in emails that are sent about the webinar. _This field is deprecated._"
        },
        "use_reply_email": {
          "type": "boolean",
          "example": false,
          "description": "Whether to include a reply link in the footer of emails that are sent about the webinar. _This field is deprecated._"
        },
        "email_preferences": {
          "type": "object",
          "properties": {
            "email_event_reminder_1_hrs": {
              "type": "boolean",
              "description": "Whether to send a reminder email 1 hour before the webinar starts. _This field is deprecated._"
            },
            "email_post_event_thank_you": {
              "type": "boolean",
              "description": "Whether to send post-event thank-you emails. _This field is deprecated._"
            },
            "email_event_reminder_15_min": {
              "type": "boolean",
              "description": "Whether to send a reminder email 15 minutes before the webinar starts. _This field is deprecated._"
            },
            "email_event_reminder_24_hrs": {
              "type": "boolean",
              "description": "Whether to send a reminder email 24 hours before the webinar starts. _This field is deprecated._"
            },
            "email_registration_confirmation": {
              "type": "boolean",
              "description": "Whether to send a registration confirmation email after webinar registration. _This field is deprecated._"
            },
            "email_post_event_no_show_thank_you": {
              "type": "boolean",
              "description": "Whether to send post-event thank-you emails to no-shows. _This field is deprecated._"
            }
          },
          "description": "The preferences for emails that are sent about the webinar. _This field is deprecated._"
        },
        "sender_policy_url": {
          "type": "string",
          "example": "vimeo.com/policy",
          "description": "The URL of the sender's privacy policy. _This field is deprecated._"
        },
        "use_sender_address": {
          "type": "boolean",
          "example": false,
          "description": "Whether to include the sender's physical address in the footer of emails that are sent about the webinar. _This field is deprecated._"
        },
        "use_sender_policy_url": {
          "type": "boolean",
          "example": false,
          "description": "Whether to include the URL of the sender's privacy policy in the footer of emails that are sent about the webinar. _This field is deprecated._"
        }
      },
      "description": "The settings for emails that are sent about the webinar. _This field is deprecated._"
    }
  }
}
object EditChannelRequest
{
  "type": "object",
  "properties": {
    "link": {
      "type": "string",
      "example": "staffpicks",
      "description": "The link to access the channel. You can use a custom name in the URL in place of a numeric channel ID, as in `/channels/{url_custom}`. Submitting `\"\"` for this field removes the link alias."
    },
    "name": {
      "type": "string",
      "example": "Vimeo Staff Picks",
      "description": "The name of the channel."
    },
    "privacy": {
      "enum": [
        "anybody",
        "moderators",
        "users"
      ],
      "type": "string",
      "description": "The privacy level of the channel.\n\nOption descriptions:\n * `anybody` - Anyone can access the channel.\n * `moderators` - Only moderators can access the channel.\n * `users` - Only moderators and designated users can access the channel.\n"
    },
    "description": {
      "type": "string",
      "example": "We really love videos, and these are the videos we really, really love.",
      "description": "The description of the channel."
    }
  }
}
object EditChapterRequest
{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "example": "Chapter 1",
      "nullable": true,
      "description": "The title of the chapter."
    },
    "timecode": {
      "type": "number",
      "example": 140,
      "nullable": true,
      "description": "The timecode of the chapter in seconds from the start of the video."
    },
    "active_thumbnail_uri": {
      "type": "string",
      "example": "/videos/12345678/chapters/12345/pictures/24kjh4h4g38175db9f59fae9f7g9ekhg",
      "description": "The URI of the chapter's active thumbnail."
    }
  }
}
object EditCommentRequest
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "text": {
      "type": "string",
      "example": "I love this!",
      "description": "The new comment text."
    }
  }
}
object EditPictureRequest
{
  "type": "object",
  "properties": {
    "active": {
      "type": "boolean",
      "example": true,
      "description": "Whether the picture is the authenticated user's active portrait."
    }
  }
}
object EditProjectRequest
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "Rough cuts",
      "description": "The name of the folder."
    }
  }
}
object EditShowcaseRequest
{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "example": "my-custom-url",
      "nullable": true,
      "description": "The custom Vimeo URL of the showcase."
    },
    "name": {
      "type": "string",
      "example": "Vimeo Holiday Videos!",
      "description": "The name of the showcase."
    },
    "sort": {
      "enum": [
        "added_first",
        "added_last",
        "alphabetical",
        "arranged",
        "comments",
        "likes",
        "newest",
        "oldest",
        "plays"
      ],
      "type": "string",
      "description": "The default sort order of the videos as they appear in the showcase.\n\nOption descriptions:\n * `added_first` - The videos appear according to when they were added to the showcase, with the most recently added first.\n * `added_last` - The videos appear according to when they were added to the showcase, with the most recently added last.\n * `alphabetical` - The videos appear alphabetically by their title.\n * `arranged` - The videos appear as arranged by the owner of the showcase.\n * `comments` - The videos appear according to their number of comments.\n * `likes` - The videos appear according to their number of likes.\n * `newest` - The videos appear in chronological order with the newest first.\n * `oldest` - The videos appear in chronological order with the oldest first.\n * `plays` - The videos appear according to their number of plays.\n"
    },
    "theme": {
      "enum": [
        "dark",
        "standard"
      ],
      "type": "string",
      "description": "The color theme of the showcase.\n\nOption descriptions:\n * `dark` - The showcase uses the dark theme.\n * `standard` - The showcase uses the standard theme.\n"
    },
    "domain": {
      "type": "string",
      "example": "mycustomdomain.com",
      "nullable": true,
      "description": "The custom domain of the showcase."
    },
    "layout": {
      "enum": [
        "grid",
        "player"
      ],
      "type": "string",
      "description": "The type of layout for presenting the showcase.\n\nOption descriptions:\n * `grid` - The videos appear in a grid.\n * `player` - The videos appear in the player.\n"
    },
    "privacy": {
      "enum": [
        "anybody",
        "embed_only",
        "nobody",
        "password",
        "team",
        "unlisted"
      ],
      "type": "string",
      "description": "The privacy level of the showcase.\n\nOption descriptions:\n * `anybody` - Anyone can access the showcase, either on Vimeo or through an embed.\n * `embed_only` - The showcase doesn't appear on Vimeo, but it can be embedded on other sites.\n * `nobody` - No one can access the showcase, including the authenticated user.\n * `password` - Only people with the password can access the showcase.\n * `team` - Only members of the authenticated user's team can access the showcase.\n * `unlisted` - The showcase can't be accessed if the URL omits its unlisted hash.\n"
    },
    "hide_nav": {
      "type": "boolean",
      "example": true,
      "description": "Whether to hide Vimeo navigation when displaying the showcase."
    },
    "password": {
      "type": "string",
      "example": "hunter1",
      "description": "The showcase's password. This field is required only when **privacy** is `password`."
    },
    "brand_color": {
      "type": "string",
      "example": "ff66ee",
      "description": "The hexadecimal code for the color of the player buttons and showcase controls."
    },
    "description": {
      "type": "string",
      "example": "Vimeo holiday videos!",
      "description": "The description of the showcase."
    },
    "review_mode": {
      "type": "boolean",
      "example": true,
      "description": "Whether showcase videos use the review mode URL."
    },
    "hide_upcoming": {
      "type": "boolean",
      "example": false,
      "description": "Whether to include the upcoming event in the showcase."
    },
    "use_custom_domain": {
      "type": "boolean",
      "example": true,
      "description": "Whether the user has opted for a custom domain for their showcase."
    }
  }
}
object EditUserRequest
{
  "type": "object",
  "properties": {
    "bio": {
      "type": "string",
      "example": "This is where you will find videos and news updates from the staff",
      "description": "The user's bio."
    },
    "link": {
      "type": "string",
      "example": "staff",
      "description": "The user's custom Vimeo URL."
    },
    "name": {
      "type": "string",
      "example": "Vimeo Staff",
      "description": "The user's display name."
    },
    "gender": {
      "enum": [
        "f",
        "m",
        "n",
        "o"
      ],
      "type": "string",
      "description": "The authenticated user's gender.\n\nOption descriptions:\n * `f` - The user's preferred pronouns are she and her.\n * `m` - The user's preferred pronouns are he and him.\n * `n` - The user would rather not give preferred pronouns.\n * `o` - The user's preferred pronouns are they and them.\n"
    },
    "videos": {
      "type": "object",
      "properties": {
        "privacy": {
          "type": "object",
          "properties": {
            "add": {
              "type": "boolean",
              "example": true,
              "description": "Whether the user can add videos to showcases, channels, or groups by default."
            },
            "view": {
              "enum": [
                "anybody",
                "contacts",
                "disable",
                "nobody",
                "password",
                "unlisted",
                "users"
              ],
              "type": "string",
              "description": "Who can access the user's videos by default.\n\nOption descriptions:\n * `anybody` - Anyone can access the videos. This privacy setting appears as `Public` on the Vimeo front end.\n * `contacts` - Only the user's contacts can access the videos. _This field is deprecated._\n * `disable` - The videos are disabled. This privacy setting appears as `Hide from Vimeo` on the Vimeo front end.\n * `nobody` - No one can access the videos. This privacy setting appears as `Private` on the Vimeo front end.\n * `password` - Only those with the password can access the videos.\n * `unlisted` - The videos are unlisted.\n * `users` - Only other Vimeo members can access the videos. _This field is deprecated._\n"
            },
            "embed": {
              "enum": [
                "private",
                "public",
                "whitelist"
              ],
              "type": "string",
              "description": "The privacy for the user's embedded videos. The whitelist value enables you to define all valid embeddable domains. See our [Interacting with Videos](https://developer.vimeo.com/api/guides/videos/interact#set-off-site-privacy) guide for details on adding and removing domains.\n\nOption descriptions:\n * `private` - The videos can't be embedded on any domain.\n * `public` - The videos can be embedded on any domain.\n * `whitelist` - The videos can be embedded on the specified domains only.\n"
            },
            "comments": {
              "enum": [
                "anybody",
                "contacts",
                "nobody"
              ],
              "type": "string",
              "description": "Who can comment on the user's video uploads by default.\n\nOption descriptions:\n * `anybody` - Anyone can comment.\n * `contacts` - Only the user's contacts can comment.\n * `nobody` - No one can comment.\n"
            },
            "download": {
              "type": "boolean",
              "example": true,
              "description": "Whether the user can download videos. This value becomes the default download setting for all future videos that the user uploads."
            }
          }
        }
      }
    },
    "location": {
      "type": "string",
      "example": "New York City",
      "description": "The user's location."
    },
    "password": {
      "type": "string",
      "example": "hunter1",
      "description": "The default password for all future videos that this user uploads. To use this field, the **videos.privacy.view** field must be `password`."
    },
    "content_filter": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "A list of values describing the content in the user's videos. Find the full list in the [/contentratings](https://developer.vimeo.com/api/reference/videos#get_content_ratings) endpoint. You must provide a comma-separated list if you're using a query string or an array if you're using JSON."
    }
  }
}
object EditVideoRequest
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "example": "Celebrating 10 Years of Staff Picks",
      "description": "The title of the video. This field can hold a maximum of 128 characters."
    },
    "embed": {
      "type": "object",
      "properties": {
        "cards": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The UUID of the card."
              },
              "url": {
                "type": "string",
                "description": "The URL of the card."
              },
              "teaser": {
                "type": "string",
                "description": "The description of the card."
              },
              "headline": {
                "type": "string",
                "description": "The title of the card."
              },
              "timecode": {
                "type": "number",
                "description": "The playback timestamp, given in seconds, when the card appears."
              },
              "image_url": {
                "type": "string",
                "description": "The URL of the thumbnail for the card."
              },
              "display_time": {
                "type": "number",
                "description": "The number of seconds for which the card appears."
              }
            }
          },
          "description": "A collection of cards associated with the selected video."
        },
        "color": {
          "type": "string",
          "example": "#1ab7ea",
          "description": "The main color of the embeddable player."
        },
        "logos": {
          "type": "object",
          "properties": {
            "vimeo": {
              "type": "boolean",
              "example": true,
              "description": "Whether to show the Vimeo logo on the embeddable player."
            },
            "custom": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "number",
                  "example": 462119,
                  "nullable": true,
                  "description": "The ID of the custom logo that will show on the emeddable player."
                },
                "link": {
                  "type": "string",
                  "example": "https://example.com",
                  "nullable": true,
                  "description": "The URL that loads when the user clicks the custom logo."
                },
                "active": {
                  "type": "boolean",
                  "example": true,
                  "description": "Whether to show the active custom logo on the embeddable player."
                },
                "sticky": {
                  "type": "boolean",
                  "example": true,
                  "description": "Whether the custom logo is always visible on the embeddable player (`true`) or whether the logo appears and disappears with the rest of the UI (`false`)."
                }
              }
            }
          }
        },
        "title": {
          "type": "object",
          "properties": {
            "name": {
              "enum": [
                "hide",
                "show",
                "user"
              ],
              "type": "string",
              "description": "How to handle the video title in the title bar of the embeddable player.\n\nOption descriptions:\n * `hide` - Hide the video title.\n * `show` - Show the video title.\n * `user` - Enable the user to decide.\n"
            },
            "owner": {
              "enum": [
                "hide",
                "show",
                "user"
              ],
              "type": "string",
              "description": "How to handle the owner information in the title bar of the embeddable player.\n\nOption descriptions:\n * `hide` - Hide the owner info.\n * `show` - Show the owner info.\n * `user` - Enable the user to decide.\n"
            },
            "portrait": {
              "enum": [
                "hide",
                "show",
                "user"
              ],
              "type": "string",
              "description": "How to handle the owner portrait in the title bar of the embeddable player.\n\nOption descriptions:\n * `hide` - Hide the portrait.\n * `show` - Show the portrait.\n * `user` - Enable the user to decide.\n"
            }
          }
        },
        "volume": {
          "type": "boolean",
          "example": true,
          "description": "Whether to show the volume selector on the embeddable player."
        },
        "airplay": {
          "type": "boolean",
          "example": true,
          "description": "Whether AirPlay is enabled in the embeddable player."
        },
        "buttons": {
          "type": "object",
          "properties": {
            "hd": {
              "type": "boolean",
              "example": true,
              "description": "Whether to show the `HD` button on the embeddable player."
            },
            "like": {
              "type": "boolean",
              "example": true,
              "description": "Whether to show the `like` button on the embeddable player."
            },
            "embed": {
              "type": "boolean",
              "example": true,
              "description": "Whether to show the `embed` button on the embeddable player."
            },
            "share": {
              "type": "boolean",
              "example": true,
              "description": "Whether to show the `share` button on the embeddable player."
            },
            "scaling": {
              "type": "boolean",
              "example": true,
              "description": "Whether to show the `scaling` button on the embeddable player in fullscreen mode."
            },
            "fullscreen": {
              "type": "boolean",
              "example": true,
              "description": "Whether to show the `fullscreen` button on the embeddable player."
            },
            "watchlater": {
              "type": "boolean",
              "example": true,
              "description": "Whether to show the `watch later` button on the embeddable player."
            }
          }
        },
        "playbar": {
          "type": "boolean",
          "example": true,
          "description": "Whether to show the playbar on the embeddable player."
        },
        "chapters": {
          "type": "boolean",
          "example": true,
          "description": "Whether chapters are enabled in the embeddable player."
        },
        "chromecast": {
          "type": "boolean",
          "example": true,
          "description": "Whether the Chromecast button appears in the embeddable player."
        },
        "end_screen": {
          "type": "object",
          "properties": {
            "type": {
              "enum": [
                "empty",
                "loop",
                "share",
                "thumbnail"
              ],
              "type": "string",
              "description": "The end screen type.\n\nOption descriptions:\n * `empty` - The end screen is empty.\n * `loop` - The end screen loops the video playback.\n * `share` - The end screen includes sharing options.\n * `thumbnail` - The end screen includes the thumbnail of the video.\n"
            }
          }
        },
        "transcript": {
          "type": "boolean",
          "example": true,
          "description": "Whether the transcript controls appear in the embeddable player."
        },
        "play_button": {
          "type": "object",
          "properties": {
            "position": {
              "enum": [
                "auto",
                "bottom",
                "center"
              ],
              "type": "string",
              "description": "The position of the play button within the embeddable player.\n\nOption descriptions:\n * `auto` - Use Vimeo's default positioning for the play button.\n * `bottom` - The play button is positioned at the bottom of the player, except when in tiny mode.\n * `center` - The play button is positioned in the center of the player.\n"
            }
          },
          "description": "An object representing the play button's settings."
        },
        "audio_tracks": {
          "type": "boolean",
          "example": true,
          "description": "Whether multiple audio tracks can appear in the embeddable player."
        },
        "closed_captions": {
          "type": "boolean",
          "example": true,
          "description": "Whether closed captions are enabled in the embeddable player."
        },
        "quality_selector": {
          "type": "boolean",
          "example": true,
          "description": "Whether to show the quality selector in the embeddable player."
        }
      }
    },
    "locale": {
      "type": "string",
      "example": "en-US",
      "description": "The video's default language. For a full list of supported languages, use the [`/languages?filter=texttracks`](https://developer.vimeo.com/api/reference/videos#get_languages) endpoint."
    },
    "license": {
      "enum": [
        "by",
        "by-nc",
        "by-nc-nd",
        "by-nc-sa",
        "by-nd",
        "by-sa",
        "cc0"
      ],
      "type": "string",
      "description": "The Creative Commons license under which the video is offered.\n\nOption descriptions:\n * `by` - The video is offered under CC BY, or the attibution-only license.\n * `by-nc` - The video is offered under CC BY-NC, or the Attribution-NonCommercial license.\n * `by-nc-nd` - The video is offered under CC BY-NC-ND, or the Attribution-NonCommercian-NoDerivs license.\n * `by-nc-sa` - The video is offered under CC BY-NC-SA, or the Attribution-NonCommercial-ShareAlike licence.\n * `by-nd` - The video is offered under CC BY-ND, or the Attribution-NoDerivs license.\n * `by-sa` - The video is offered under CC BY-SA, or the Attribution-ShareAlike license.\n * `cc0` - The video is offered under CC0, or public domain, videos.\n"
    },
    "privacy": {
      "type": "object",
      "properties": {
        "add": {
          "type": "boolean",
          "example": true,
          "description": "Whether a user can add the video to a showcase, channel, or group."
        },
        "view": {
          "enum": [
            "anybody",
            "contacts",
            "disable",
            "nobody",
            "password",
            "unlisted",
            "users"
          ],
          "type": "string",
          "description": "The video's privacy setting. When this value is `users`, `application/json` is the only valid content type. Also, some privacy settings are unavailable to Vimeo Free members; for more information, see our [Help Center](https://vimeo.zendesk.com/hc/en-us/articles/224817847).\n\nOption descriptions:\n * `anybody` - Anyone can access the video. This privacy setting appears as `Public` on the Vimeo front end.\n * `contacts` - Only those who follow the owner on Vimeo can access the video. _This field is deprecated._\n * `disable` - The video is embeddable, but it's hidden on Vimeo and can't be played. This privacy setting appears as `Hide from Vimeo` on the Vimeo front end. _This field is deprecated._\n * `nobody` - No one except the owner can access the video. This privacy setting appears as `Private` on the Vimeo front end.\n * `password` - Only those with the password can access the video.\n * `unlisted` - Only those with the private link can access the video.\n * `users` - Only Vimeo members can access the video. _This field is deprecated._\n"
        },
        "embed": {
          "enum": [
            "private",
            "public",
            "whitelist"
          ],
          "type": "string",
          "description": "The video's embed setting. Specify the `whitelist` value to restrict embedding to a specific set of domains. For more information, see our [Interacting with Videos](https://developer.vimeo.com/api/guides/videos/interact#set-off-site-privacy) guide.\n\nOption descriptions:\n * `private` - The video can't be embedded.\n * `public` - The video can be embedded.\n * `whitelist` - The video can be embedded on the specified domains only.\n"
        },
        "comments": {
          "enum": [
            "anybody",
            "contacts",
            "nobody"
          ],
          "type": "string",
          "description": "The privacy level required to comment on the video.\n\nOption descriptions:\n * `anybody` - Anyone can comment on the video.\n * `contacts` - Only the owner's contacts can comment on the video.\n * `nobody` - No one can comment on the video.\n"
        },
        "download": {
          "type": "boolean",
          "example": true,
          "description": "Whether a user can download the video. This field isn't available to Vimeo Free members."
        }
      }
    },
    "spatial": {
      "type": "object",
      "properties": {
        "projection": {
          "enum": [
            "cubical",
            "cylindrical",
            "dome",
            "equirectangular",
            "pyramid"
          ],
          "type": "string",
          "description": "The 360 spatial projection.\n\nOption descriptions:\n * `cubical` - Use cubical projection.\n * `cylindrical` - Use cylindrical projection.\n * `dome` - Use dome projection.\n * `equirectangular` - Use equirectangular projection.\n * `pyramid` - Use pyramid projection.\n"
        },
        "field_of_view": {
          "type": "number",
          "example": 50,
          "description": "The 360 field of view. This value must be between 30 and 90. The default is 50."
        },
        "stereo_format": {
          "enum": [
            "left-right",
            "mono",
            "top-bottom"
          ],
          "type": "string",
          "description": "The 360 spatial stereo format.\n\nOption descriptions:\n * `left-right` - Use left-right stereo.\n * `mono` - Use monaural audio.\n * `top-bottom` - Use top-bottom stereo.\n"
        },
        "director_timeline": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "pitch",
              "time_code",
              "yaw"
            ],
            "properties": {
              "yaw": {
                "type": "number",
                "example": 125,
                "description": "The 360 director timeline yaw. This value must be between 0 and 360, and you must specify it only when **spatial.director_timeline** is defined."
              },
              "roll": {
                "type": "number",
                "description": "The 360 director timeline roll."
              },
              "pitch": {
                "type": "number",
                "example": 70,
                "description": "The 360 director timeline pitch. This value must be between −90 and 90, and you must specify it only when **spatial.director_timeline** is defined."
              },
              "time_code": {
                "type": "number",
                "example": 5,
                "description": "The 360 director timeline time code. This paramater is required only when **spatial.director_timeline** is defined."
              }
            }
          },
          "description": "An array representing the 360 director timeline."
        }
      }
    },
    "password": {
      "type": "string",
      "example": "hunter1",
      "description": "The password. When you set **privacy.view** to `password`, you must provide the password as an additional parameter. This field can hold a maximum of 32 characters."
    },
    "custom_url": {
      "type": "string",
      "example": "puppies",
      "description": "The custom link of the video. This link doesn't include the base URL and the username or user ID of the video's owner."
    },
    "description": {
      "type": "string",
      "example": "A celebration of 10 years of Staff Picks.",
      "description": "The description of the video. This field can hold a maximum of 5000 characters."
    },
    "review_page": {
      "type": "object",
      "properties": {
        "active": {
          "type": "boolean",
          "example": true,
          "description": "Whether to enable video review."
        }
      }
    },
    "embed_domains": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The complete list of domains the video can be embedded on. This field overwrites existing domains and requires that **privacy_embed** have the value `whitelist`."
    },
    "content_rating": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "A list of values describing the content in this video. For a full list of values, use the [`/contentratings`](https://developer.vimeo.com/api/reference/videos#get_content_ratings) endpoint."
    },
    "hide_from_vimeo": {
      "type": "boolean",
      "example": false,
      "description": "Whether to hide the video from everyone except the video's owner. When the value is `true`, unlisted video links work only for the video's owner."
    },
    "embed_domains_add": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "A list of domains intended to be added to an existing set of domains. This field requires that **privacy_embed** have the value `whitelist`."
    },
    "embed_domains_delete": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "A list of domains intended to be removed from an existing set of domains. This field requires that **privacy_embed** have the value `whitelist`."
    }
  }
}
object EditVodRequest
{
  "type": "object",
  "properties": {
    "link": {
      "type": "string",
      "example": "darbyforever",
      "description": "The custom string to use in the Vimeo URL of the On Demand page."
    },
    "publish": {
      "type": "object",
      "properties": {
        "active": {
          "type": "boolean",
          "example": true,
          "description": "Whether to publish the On Demand page."
        }
      }
    },
    "preorder": {
      "type": "object",
      "properties": {
        "active": {
          "type": "boolean",
          "example": true,
          "description": "Whether to enable preorders on the On Demand page."
        },
        "publish_time": {
          "type": "string",
          "example": "2017-05-16T15:05:43+00:00",
          "description": "The time in ISO 8601 format when the On Demand page will be published. This parameter is required when **preorder.active** is `true`."
        }
      }
    },
    "publish_when_ready": {
      "type": "boolean",
      "example": true,
      "description": "Whether to publish the On Demand page automatically after all videos have finished transcoding."
    }
  }
}
array EmbedPresetsCustomLogosListResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/picture"
  }
}
array EmbedPresetsCustomLogosListUserLogosResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/picture"
  }
}