Skip to content

Instantly share code, notes, and snippets.

@rossng
Created January 1, 2021 02:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rossng/9cf6d798234407f150c2080a2c08eab8 to your computer and use it in GitHub Desktop.
Save rossng/9cf6d798234407f150c2080a2c08eab8 to your computer and use it in GitHub Desktop.
Vimeo OpenAPI specification
{"openapi":"3.0.2","info":{"title":"Vimeo API","description":"Build something great. Vimeo's API supports flexible, high-quality video integration with your custom apps.","version":"3.4","contact":{"url":"https://developer.vimeo.com/help"}},"tags":[{"name":"API Information\\Essentials","description":"These are the most common methods for retrieving information about the Vimeo API."},{"name":"Authentication Extras\\Authenticate","description":"Use these methods to perform authentication."},{"name":"Authentication Extras\\Convert","description":"Use these methods to convert authentication resources."},{"name":"Authentication Extras\\Essentials","description":"These are the most common methods for working with authentication."},{"name":"Authentication Extras\\Exchange","description":"Use these methods to exchange authentication resources."},{"name":"Categories\\Channels","description":"Use these methods to work with channels in a category."},{"name":"Categories\\Essentials","description":"These are the most common methods for working with categories."},{"name":"Categories\\Groups","description":"Use these methods to work with groups in a category."},{"name":"Categories\\Users","description":"Use these methods to manage user interactions with a category."},{"name":"Categories\\Videos","description":"Use these methods to work with videos in a category."},{"name":"Channels\\Categories","description":"Use these methods to work with channel categories."},{"name":"Channels\\Essentials","description":"These are the most common methods for working with channels."},{"name":"Channels\\Moderators","description":"Use these methods to work with channel moderators."},{"name":"Channels\\Private channel members","description":"Use these methods to work with private channel members."},{"name":"Channels\\Subscriptions and subscribers","description":"Use these methods to work with channel subscriptions."},{"name":"Channels\\Tags","description":"Use these methods to work with tags in channels."},{"name":"Channels\\Videos","description":"Use these methods to work with videos in channels."},{"name":"Embed Presets\\Custom logos","description":"Vimeo members with access to embed presets can include their own logo images in the embedded player. These custom logos can be part of an embed preset.\n\n Use these methods to work with custom logos."},{"name":"Embed Presets\\Essentials","description":"These are the most common methods for working with embed presets."},{"name":"Embed Presets\\Timeline events","description":"Use these methods to work with timeline events."},{"name":"Embed Presets\\Videos","description":"Use these methods to work with videos that have embed presets."},{"name":"Folders\\Essentials","description":"These are the most common methods for working with folders."},{"name":"Folders\\Videos","description":"Use these methods to manage videos in folders."},{"name":"Groups\\Essentials","description":"These are the most common methods for working with groups."},{"name":"Groups\\Subscriptions","description":"Use these methods to manage group membership."},{"name":"Groups\\Users","description":"Use these methods to manage group members."},{"name":"Groups\\Videos","description":"Use these methods to manage group videos."},{"name":"Likes\\Essentials","description":"These are the most common methods for working with likes."},{"name":"Live\\Event destinations","description":"Use these methods to work with live event destinations."},{"name":"On Demand\\Backgrounds","description":"Use these methods to work with background images on an On Demand page."},{"name":"On Demand\\Essentials","description":"These are the most common methods for working with On Demand pages."},{"name":"On Demand\\Genres","description":"Use these methods to work with On Demand genres."},{"name":"On Demand\\Posters","description":"Use these methods to work with poster images on On Demand pages."},{"name":"On Demand\\Promotions","description":"Use these methods to work with promotions on On Demand pages."},{"name":"On Demand\\Purchases and rentals","description":"Use these methods to work with purchases and rentals on On Demand pages."},{"name":"On Demand\\Regions","description":"Use these methods to work with regions on On Demand pages."},{"name":"On Demand\\Seasons","description":"Use these methods to work with On Demand seasons."},{"name":"On Demand\\Videos","description":"Use these methods to work with videos on On Demand pages."},{"name":"Portfolios\\Essentials","description":"These are the most common methods for working with portfolios."},{"name":"Portfolios\\Videos","description":"Use these methods to manage portfolio videos."},{"name":"Showcases\\Custom showcase logos","description":"Use these methods to manage custom showcase logos, or the supplementary images, usually logos, that appear on a showcase's page. These images aren't the same as showcase thumbnails, or the images that represent the showcase across Vimeo."},{"name":"Showcases\\Custom showcase thumbnails","description":"Use these methods to manage custom thumbnail images for showcases. These thumbnails come from uploaded image files that aren't necessarily stills from a video."},{"name":"Showcases\\Essentials","description":"These are the most common methods for working with showcases."},{"name":"Showcases\\Showcase videos","description":"Use these methods to manage showcase videos."},{"name":"Tags\\Essentials","description":"These are the most common methods for working with tags."},{"name":"Teams\\Members","description":"Use these methods to work with team members."},{"name":"Tutorial\\Essentials","description":"These are the most common methods for working with the API tutorial."},{"name":"Users\\Essentials","description":"These are the most common methods for working with users."},{"name":"Users\\Feeds","description":"Use these methods to work with user feeds."},{"name":"Users\\Followers","description":"Use these methods to work with user followers."},{"name":"Users\\Pictures","description":"Use these methods to work with user pictures."},{"name":"Users\\Search","description":"Use these methods to search for users."},{"name":"Users\\Watch history","description":"Use these methods to work with a user's watch history."},{"name":"Videos\\Content ratings","description":"Use these methods to work with video content ratings."},{"name":"Videos\\Creative Commons","description":"Use these methods to work with Creative Commons licenses."},{"name":"Videos\\Credits","description":"Use these methods to work with credited users in videos."},{"name":"Videos\\Embed privacy","description":"Use these methods to manage the whitelist of embeddable videos."},{"name":"Videos\\Essentials","description":"These are the most common methods for working with videos."},{"name":"Videos\\Languages","description":"Use these methods to work with video languages."},{"name":"Videos\\Live M3U8 playback","description":"Use these methods to work with M3U8 playback URLs for live event streams."},{"name":"Videos\\Private videos","description":"Use these methods to work with private videos."},{"name":"Videos\\Recommendations","description":"Use these methods to work with recommended videos."},{"name":"Videos\\Showcases","description":"Use these methods to work with showcase videos."},{"name":"Videos\\Tags","description":"Use these methods to work with associated tags."},{"name":"Videos\\Text tracks","description":"Use these methods to work with video text tracks."},{"name":"Videos\\Thumbnails","description":"Use these methods to work with video thumbnails."},{"name":"Videos\\Uploads","description":"Use these methods to work with video uploads."},{"name":"Videos\\Versions","description":"Use these methods to work with video versioning."},{"name":"Videos\\Video comments","description":"Use these methods to work with video comments."},{"name":"Watch Later Queue\\Essentials","description":"These are the most common methods for working with a user's Watch Later queue."}],"servers":[{"url":"https://api.vimeo.com","description":"Vimeo.com"}],"paths":{"/":{"get":{"summary":"Get the API specification","description":"This method returns the full OpenAPI specification for the Vimeo API.","operationId":"get_endpoints","tags":["API Information\\Essentials"],"parameters":[{"description":"Return an OpenAPI specification.","in":"query","name":"openapi","required":false,"schema":{"type":"boolean","example":true}}],"responses":{"200":{"description":"Standard request.","content":{"application/vnd.vimeo.endpoint+json":{"schema":{"$ref":"#/components/schemas/endpoint"}}}}}}},"/albums/{album_id}/available_videos":{"get":{"summary":"Get all the user's videos that can be added to or removed from a showcase","description":"This endpoint returns every video belonging to the authenticated user that can be added to or removed from the specified showcase. The user must be the owner of the showcase.","operationId":"get_available_showcase_videos","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by date.\n * `default` - Sort the results by the default method.\n * `duration` - Sort the results by duration.\n * `last_user_action_event_date` - Sort the results by most recent user interaction.\n * `likes` - Sort the results by number of likes.\n * `modified_time` - Sort the results by last modification.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","default","duration","last_user_action_event_date","likes","modified_time","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"403":{"description":"Error code 3433: The authenticated user can't add videos to this showcase.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"No such showcase exists.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/categories":{"get":{"summary":"Get all categories","description":"This method returns every available category.","operationId":"get_categories","tags":["Categories\\Essentials"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["last_video_featured_time","name"]}}],"responses":{"200":{"description":"The categories were returned.","content":{"application/vnd.vimeo.category+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/category"}}}}}}}},"/categories/{category}":{"get":{"summary":"Get a specific category","description":"This method returns the specified category.","operationId":"get_category","tags":["Categories\\Essentials"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"string","example":"animation"}}],"responses":{"200":{"description":"The category was returned.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/category"}}}},"404":{"description":"No such category exists.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/categories/{category}/channels":{"get":{"summary":"Get all the channels in a category","description":"This method returns every channel that belongs to the specified category.","operationId":"get_category_channels","tags":["Categories\\Channels"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date.\n * `followers` - Sort the results by number of followers.\n * `videos` - Sort the results by number of videos.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","followers","videos"]}}],"responses":{"200":{"description":"The channels were returned.","content":{"application/vnd.vimeo.channel+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/channel"}}}}},"404":{"description":"No such category exists.","content":{"application/vnd.vimeo.channel+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/categories/{category}/groups":{"get":{"summary":"Get all the groups in a category","description":"This method returns every group that belongs to the specified category.","operationId":"get_category_groups","tags":["Categories\\Groups"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date.\n * `members` - Sort the results by number of members.\n * `videos` - Sort the results by number of videos.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","members","videos"]}}],"responses":{"200":{"description":"The groups were returned.","content":{"application/vnd.vimeo.group+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/group"}}}}},"404":{"description":"No such category exists.","content":{"application/vnd.vimeo.group+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/categories/{category}/videos":{"get":{"summary":"Get all the videos in a category","description":"This method returns every video that belongs to the specified category.","operationId":"get_category_videos","tags":["Categories\\Videos"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `conditional_featured` - Return featured videos.\n * `embeddable` - Return embeddable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["conditional_featured","embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by date.\n * `duration` - Sort the results by duration.\n * `featured` - Sort the results by featured status.\n * `likes` - Sort the results by number of likes.\n * `plays` - Sort the results by number of plays.\n * `relevant` - Sort the results by relevance.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","duration","featured","likes","plays","relevant"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"404":{"description":"No such category exists.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/categories/{category}/videos/{video_id}":{"get":{"summary":"Get a specific video in a category","description":"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":"check_category_for_video","tags":["Categories\\Videos"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":273576296}}],"responses":{"200":{"description":"The video was returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"404":{"description":"No such category exists, or the video doesn't belong to it.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/channels":{"get":{"summary":"Get all channels","description":"This method returns all available channels.","operationId":"get_channels","tags":["Channels\\Essentials"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `featured` - Return featured channels.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["featured"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by creation date.\n * `default` - Sort the results by creation date.\n * `followers` - Sort the results by number of followers.\n * `relevant` - Sort the results by relevance. This option is available for search queries only.\n * `videos` - Sort the results by number of videos.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","default","followers","relevant","videos"]}}],"responses":{"200":{"description":"The channels were returned.","content":{"application/vnd.vimeo.channel+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/channel"}}}}},"400":{"description":"The relevant sort has no search query.","content":{"application/vnd.vimeo.channel+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Create a channel","description":"This method creates a new channel.","operationId":"create_channel","tags":["Channels\\Essentials"],"requestBody":{"required":true,"content":{"application/vnd.vimeo.channel+json":{"schema":{"type":"object","properties":{"description":{"description":"The description of the channel.","example":"We really love videos, and these are the videos we really, really love.","type":"string"},"link":{"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}`.","example":"staffpicks","type":"string"},"name":{"description":"The name of the channel.","example":"Vimeo Staff Picks","type":"string"},"privacy":{"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","enum":["anybody","moderators","user"],"type":"string"}},"required":["name","privacy"]}}}},"responses":{"200":{"description":"The channel was created.","content":{"application/vnd.vimeo.channel+json":{"schema":{"$ref":"#/components/schemas/channel"}}}},"400":{"description":"A parameter is invalid.","content":{"application/vnd.vimeo.channel+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user can't create channels.","content":{"application/vnd.vimeo.channel+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["create"]}]}},"/channels/{channel_id}":{"delete":{"summary":"Delete a channel","description":"This method deletes the specified channel.","operationId":"delete_channel","tags":["Channels\\Essentials"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"responses":{"204":{"description":"The channel was deleted."},"403":{"description":"The authenticated user doesn't own this channel.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific channel","description":"This method returns a single channel.","operationId":"get_channel","tags":["Channels\\Essentials"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"responses":{"200":{"description":"The channel was returned.","content":{"application/vnd.vimeo.channel+json":{"schema":{"$ref":"#/components/schemas/channel"}}}}}},"patch":{"summary":"Edit a channel","description":"This method edits the specified channel.","operationId":"edit_channel","tags":["Channels\\Essentials"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.channel+json":{"schema":{"type":"object","properties":{"description":{"description":"The description of the channel.","example":"We really love videos, and these are the videos we really, really love.","type":"string"},"link":{"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.","example":"staffpicks","type":"string"},"name":{"description":"The name of the channel.","example":"Vimeo Staff Picks","type":"string"},"privacy":{"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","enum":["anybody","moderators","users"],"type":"string"}}}}}},"responses":{"200":{"description":"The channel was edited.","content":{"application/vnd.vimeo.channel+json":{"schema":{"$ref":"#/components/schemas/channel"}}}},"400":{"description":"A parameter is invalid.","content":{"application/vnd.vimeo.channel+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/channels/{channel_id}/categories":{"get":{"summary":"Get all the categories to which a channel belongs","description":"This method returns every category to which the specified channel belongs.","operationId":"get_channel_categories","tags":["Channels\\Categories"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"responses":{"200":{"description":"The categories were returned.","content":{"application/vnd.vimeo.category+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/category"}}}}},"404":{"description":"No such channel exists.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Add a channel to a list of categories","description":"This method adds the specified channel to multiple categories.","operationId":"add_channel_categories","tags":["Channels\\Categories"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"channels":{"description":"The array of category URIs to add.","items":{"type":"string"},"type":"array"}},"required":["channels"]}}}},"responses":{"204":{"description":"The channel was added to the categories."},"400":{"description":"* Error code 2204: You exceeded the maximum number of channel categories.\n* Error code 2205: There was no request body, or the request body is malformed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't add categories to the channel.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"No such channel exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/channels/{channel_id}/categories/{category}":{"delete":{"summary":"Remove a channel from a category","description":"This method removes a channel from the specified category. The authenticated user must be the owner of the channel.","operationId":"delete_channel_category","tags":["Channels\\Categories"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"responses":{"204":{"description":"The channel was removed."},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user doesn't own the channel or isn't a channel moderator.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"No such channel or category exists.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"put":{"summary":"Add a channel to a specific category","description":"This method adds the specified channel to a single category. The authenticated user must be the owner of the channel.","operationId":"categorize_channel","tags":["Channels\\Categories"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"responses":{"204":{"description":"The channel was added to the category."},"400":{"description":"Error code 2204: You exceeded the maximum number of channel categories.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user doesn't own the channel or isn't a channel moderator.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"No such channel or category exists.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/channels/{channel_id}/moderators":{"delete":{"summary":"Remove a list of moderators from a channel","description":"This method removes multiple moderators from the specified channel. The authenticated user must be the owner of the channel.","operationId":"remove_channel_moderators","tags":["Channels\\Moderators"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.user+json":{"schema":{"type":"object","properties":{"user_uri":{"description":"The URI of a user to remove as a moderator.","example":"/users/152184","type":"string"}},"required":["user_uri"]}}}},"responses":{"204":{"description":"The moderators were removed."},"403":{"description":"The authenticated user doesn't own the channel, a requested user isn't a moderator of the channel, or a requested user is the owner of the channel.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such channel exists, or no such user exists.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get all the moderators of a channel","description":"This method returns every moderator of the specified channel.","operationId":"get_channel_moderators","tags":["Channels\\Moderators"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date added.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The moderators were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}}}},"patch":{"summary":"Replace the moderators of a channel","description":"This method replaces the current list of channel moderators with a new list. The authenticated user must be the owner of the channel and a follower of each requested user to add them as a channel moderator.","operationId":"replace_channel_moderators","tags":["Channels\\Moderators"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"user_uri":{"description":"The URI of the user to add as a moderator.","example":"/users/152184","type":"string"}},"required":["user_uri"]}}}},"responses":{"200":{"description":"The moderators were replaced.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}},"400":{"description":"Error code 2908: The list contains more than 100 users.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"The authenticated user doesn't own the channel.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such channel exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"put":{"summary":"Add a list of moderators to a channel","description":"This method adds multiple users as moderators to the specified channel. The authenticated user must be a follower of a requested user to add this person as a channel moderator.","operationId":"add_channel_moderators","tags":["Channels\\Moderators"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"user_uri":{"description":"The URI of a user to add as a moderator.","example":"/users/152184","type":"string"}},"required":["user_uri"]}}}},"responses":{"200":{"description":"The moderators were added."},"400":{"description":"Error code 2908: The list contains more than 100 users.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"The authenticated user doesn't own the channel, a requested user is already a moderator of the channel, or the authenticated user doesn't follow a requested user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such channel exists, or no such user exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/channels/{channel_id}/moderators/{user_id}":{"get":{"summary":"Get a specific moderator of a channel","description":"This method returns a single moderator of the specified channel.","operationId":"get_channel_moderator","tags":["Channels\\Moderators"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The moderator was returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/user"}}}}}},"delete":{"summary":"Remove a specific moderator from a channel","description":"This method removes a single moderator from the specified channel. The authenticated user must be the owner of the channel.","operationId":"remove_channel_moderator","tags":["Channels\\Moderators"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The moderator was removed."},"403":{"description":"The authenticated user doesn't own the channel, the requested user isn't a moderator of the channel, or the requested user is the owner of the channel.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such channel exists, or no such user exists.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"put":{"summary":"Add a specific moderator to a channel","description":"This method adds a single user as a moderator to the specified channel. The authenticated user must be a follower of the requested user to add them as a channel moderator.","operationId":"add_channel_moderator","tags":["Channels\\Moderators"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"403":{"description":"The authenticated user doesn't own the channel, the requested user is already a moderator of the channel, or the authenticated user doesn't follow the requested user.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such channel exists, or no such user exists.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/channels/{channel_id}/privacy/users":{"get":{"summary":"Get all the users who can access a private channel","description":"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":"get_channel_privacy_users","tags":["Channels\\Private channel members"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The users were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user doesn't own this channel.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/error"}}}}}},"put":{"summary":"Permit a list of users to access a private channel","description":"This method gives multiple users access to the specified private channel. The authenticated user must be the owner of the channel.","operationId":"set_channel_privacy_users","tags":["Channels\\Private channel members"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.user+json":{"schema":{"type":"object","properties":{"users":{"description":"The array of either the user URIs or the user IDs to permit to access the private channel.","items":{"type":"string"},"type":"array"}},"required":["users"]}}}},"responses":{"200":{"description":"The users can access the private channel.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}},"400":{"description":"* Error code 2205: There was no request body, or the request body is malformed.\n* Error code 2900: No such user exists.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user doesn't own this channel.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 2204: A requested user can't have access to the channel.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]}},"/channels/{channel_id}/privacy/users/{user_id}":{"delete":{"summary":"Restrict a user from accessing a private channel","description":"This method prevents a single user from being able to access the specified private channel. The authenticated user must be the owner of the channel.","operationId":"delete_channel_privacy_user","tags":["Channels\\Private channel members"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The user can't acceess the private channel."},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user doesn't own the channel.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]},"put":{"summary":"Permit a specific user to access a private channel","description":"This method gives a single user access to the specified private channel. The authenticated user must be the owner of the channel.","operationId":"set_channel_privacy_user","tags":["Channels\\Private channel members"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The user can now view the private channel."},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user doesn't own the channel.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]}},"/channels/{channel_id}/tags":{"get":{"summary":"Get all the tags that have been added to a channel","description":"This method returns every tag that has been added to the specified channel.","operationId":"get_channel_tags","tags":["Channels\\Tags"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"responses":{"200":{"description":"The tags were returned.","content":{"application/vnd.vimeo.tag+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/tag"}}}}},"400":{"description":"No such channel exists.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Add a list of tags to a channel","description":"This method adds multiple tags to the specified channel. The authenticated user must be the owner of the channel.","operationId":"add_tags_to_channel","tags":["Channels\\Tags"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.tag+json":{"schema":{"type":"object","properties":{"tag":{"description":"An array of tags to assign.","items":{"type":"string"},"type":"array"}},"required":["tag"]}}}},"responses":{"200":{"description":"The tags were added.","content":{"application/vnd.vimeo.tag+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/tag"}}}}},"400":{"description":"* No such channel exists, or a parameter is invalid.\n* Error code 2501: The channel can't have more than 20 tags.\n* Error code 2205: There was no request body, or the request body is malformed.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't add tags to this channel.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]}},"/channels/{channel_id}/tags/{word}":{"delete":{"summary":"Remove a tag from a channel","description":"This method removes a single tag from the specified channel. The authenticated user must be the owner of the channel.","operationId":"delete_tag_from_channel","tags":["Channels\\Tags"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The word to use as the tag.","in":"path","name":"word","required":true,"schema":{"type":"string","example":"awesome"}}],"responses":{"204":{"description":"The tag was removed."},"400":{"description":"The tag is invalid, or a parameter is invalid.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't remove tags from this channel.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Check if a tag has been added to a channel","description":"This method determines whether a tag has been added to the specified channel.","operationId":"check_if_channel_has_tag","tags":["Channels\\Tags"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The word to use as the tag.","in":"path","name":"word","required":true,"schema":{"type":"string","example":"awesome"}}],"responses":{"204":{"description":"The tag has been added to the channel."},"400":{"description":"No such tag exists.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"Error code 5000: The tag exists, but the channel isn't tagged by it.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/error"}}}}}},"put":{"summary":"Add a specific tag to a channel","description":"This method adds a single tag to the specified channel. The authenticated user must be the owner of the channel.","operationId":"add_channel_tag","tags":["Channels\\Tags"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The word to use as the tag.","in":"path","name":"word","required":true,"schema":{"type":"string","example":"awesome"}}],"responses":{"204":{"description":"The tag was added."},"400":{"description":"* The tag is invalid, or a parameter is invalid.\n* Error code 2501: The channel can't have more than 20 tags.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't add tags to this channel.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]}},"/channels/{channel_id}/users":{"get":{"summary":"Get all the followers of a channel","description":"This method returns every follower of the specified channel.","operationId":"get_channel_subscribers","tags":["Channels\\Subscriptions and subscribers"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `moderators` - Return moderators.\n","in":"query","name":"filter","required":true,"schema":{"type":"string","enum":["moderators"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by follow date.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The followers were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}},"404":{"description":"No such channel exists.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/channels/{channel_id}/videos":{"delete":{"summary":"Remove a list of videos from a channel","description":"This method removes multiple videos from the specified channel. The authenticated user must be a moderator of the channel.","operationId":"remove_videos_from_channel","tags":["Channels\\Videos"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"video_uri":{"description":"The URI of a video to remove.","example":"/videos/258684937","type":"string"}},"required":["video_uri"]}}}},"responses":{"204":{"description":"The videos were removed."},"403":{"description":"The authenticated user can't remove videos from this channel, or a video can't be removed from the channel.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such channel or user exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get all the videos in a channel","description":"This method returns every video in the specified channel.","operationId":"get_channel_videos","tags":["Channels\\Videos"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The page that contains the video URI.","in":"query","name":"containing_uri","required":false,"schema":{"type":"string","example":"/videos/258684937"}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `embeddable` - Return embeddable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `added` - Sort the results by date added.\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by creation date.\n * `default` - Use the default sorting method.\n * `duration` - Sort the results by duration.\n * `likes` - Sort the results by number of likes.\n * `manual` - Sort the results as the user has arranged them.\n * `modified_time` - Sort the results by last modification.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["added","alphabetical","comments","date","default","duration","likes","manual","modified_time","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"304":{"description":"No videos have been added to this channel since the given `If-Modified-Since` header."},"400":{"description":"The **sort** field is `default`, but the **direction** field has a value.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such channel exists.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Add a list of videos to a channel","description":"This method adds multiple videos to the specified channel. The authenticated user must be a moderator of the channel.","operationId":"add_videos_to_channel","tags":["Channels\\Videos"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"video_uri":{"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).","example":"/videos/258684937","type":"string"}},"required":["video_uri"]}}}},"responses":{"200":{"description":"The videos were added."},"403":{"description":"The authenticated user can't add videos to the channel, or a video can't be added to the channel.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such channel or user exist.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/channels/{channel_id}/videos/{video_id}":{"delete":{"summary":"Remove a specific video from a channel","description":"This method removes a single video from the specified channel. The authenticated user must be a moderator of the channel.","operationId":"delete_video_from_channel","tags":["Channels\\Videos"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was removed."},"403":{"description":"The authenticated user can't remove videos from this channel, or the video can't be removed from the channel.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such channel or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific video in a channel","description":"This method returns a single video in the specified channel. You can use it to determine whether the video is in the channel.","operationId":"get_channel_video","tags":["Channels\\Videos"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The video was returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"404":{"description":"No such channel exists.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Add a specific video to a channel","description":"This method adds a single video to the specified channel. The authenticated user must be a moderator of the channel.","operationId":"add_video_to_channel","tags":["Channels\\Videos"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was added."},"403":{"description":"The video can't be added to a channel, or the authenticated user can't add videos to this channel.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such channel or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/channels/{channel_id}/videos/{video_id}/comments":{"get":{"summary":"Get all the video comments on a video","description":"This method returns every video comment on the specified video.","operationId":"get_comments_alt1","tags":["Videos\\Video comments"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The comments were returned.","content":{"application/vnd.vimeo.comment+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/comment"}}}}}}},"post":{"summary":"Add a video comment to a video","description":"This method adds a video comment to the specified video.","operationId":"create_comment_alt1","tags":["Videos\\Video comments"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.comment+json":{"schema":{"type":"object","properties":{"text":{"description":"The text of the comment.","example":"I love this!","type":"string"}},"required":["text"]}}}},"responses":{"201":{"description":"The comment was added.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/comment"}}}},"400":{"description":"Error code 2207: The comment text is missing.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"* Error code 3301: The comment was flagged as spam.\n* Error code 3411: The authenticated user is unverified.\n* Error code 3412: The authenticated user can't comment.\n* Error code 3413: Comments are disabled for this video.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["interact"]}]}},"/channels/{channel_id}/videos/{video_id}/credits":{"get":{"summary":"Get all the credited users in a video","description":"This method returns every credited user in a video.","operationId":"get_video_credits_alt1","tags":["Videos\\Credits"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The credited users were returned.","content":{"application/vnd.vimeo.credit+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/credit"}}}}}}},"post":{"summary":"Credit a user in a video","description":"This method adds a user credit to the specified video.","operationId":"add_video_credit_alt1","tags":["Videos\\Credits"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.credit+json":{"schema":{"type":"object","properties":{"email":{"description":"The email address of the credited person.","example":"user@example.com","type":"string"},"name":{"description":"The name of the credited person.","example":"Sam Doe","type":"string"},"role":{"description":"The role of the credited person.","example":"Producer","type":"string"},"user_uri":{"description":"The Vimeo URI of the credited person.","example":"/users/152184","type":"string"}},"required":["email","name","role","user_uri"]}}}},"responses":{"201":{"description":"The credit was added.","content":{"application/vnd.vimeo.credit+json":{"schema":{"$ref":"#/components/schemas/credit"}}}},"400":{"description":"* A parameter is invalid.\n* The authenticated user has an unverified email address.\n* There is a user block between the video owner and the person receiving credit.","content":{"application/vnd.vimeo.credit+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user doesn't own the video.","content":{"application/vnd.vimeo.credit+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/channels/{channel_id}/videos/{video_id}/likes":{"get":{"summary":"Get all the users who have liked a video","description":"This method returns every user who has liked the specified video.","operationId":"get_video_likes_alt1","tags":["Likes\\Essentials"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by join date.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The users were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}}}}},"/channels/{channel_id}/videos/{video_id}/pictures":{"get":{"summary":"Get all the thumbnails of a video","description":"This method returns every thumbnail images of the specified video. The authenticated user must have team permissions for the video.","operationId":"get_video_thumbnails_alt1","tags":["Videos\\Thumbnails"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The thumbnails were returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/picture"}}}}}}},"post":{"summary":"Add a video thumbnail","description":"This method adds a thumbnail image to the specified video. The authenticated user must have team permissions for the video.","operationId":"create_video_thumbnail_alt1","tags":["Videos\\Thumbnails"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"object","properties":{"active":{"description":"Whether the image created by the **time** field should be the default thumbnail for the video.","example":true,"type":"boolean"},"time":{"description":"The time offset in seconds from which to create the thumbnail.","example":300,"type":"number"}}}}}},"responses":{"201":{"description":"The thumbnail was created.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}}},"security":[{"oauth2":["upload"]}]}},"/channels/{channel_id}/videos/{video_id}/privacy/users":{"get":{"summary":"Get all the users who can view a private video","description":"This method returns every user who has access to the specified private video.","operationId":"get_video_privacy_users_alt1","tags":["Videos\\Private videos"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The users were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}},"400":{"description":"No users can view this private video.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Permit a list of users to access a private video","description":"This method gives multiple users permission to access the specified private video. The authenticated user must be the owner of the video. The body of the request should follow our [batch request format](https://developer.vimeo.com/api/common-formats#working-with-batch-requests): each object must contain a single **uri** field whose value is the URI of the user who can access the video.","operationId":"add_video_privacy_users_alt1","tags":["Videos\\Private videos"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The users have been granted access to the private video.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}}},"security":[{"oauth2":["edit"]}]}},"/channels/{channel_id}/videos/{video_id}/texttracks":{"get":{"summary":"Get all the text tracks of a video","description":"This method returns every text track of the specified video. The authenticated user must be the owner of the video.","operationId":"get_text_tracks_alt1","tags":["Videos\\Text tracks"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The text tracks were returned.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/text-track"}}}}},"404":{"description":"No such video exists.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Add a text track to a video","description":"This method adds a text track to the specified video. For more information, see [Working with Text Track Uploads](https://developer.vimeo.com/api/upload/texttracks).","operationId":"create_text_track_alt1","tags":["Videos\\Text tracks"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"type":"object","properties":{"active":{"description":"Whether the current text track is the *active text track,* or the one that appears in the player. Only one text track per language and type can be active.","example":true,"type":"boolean"},"language":{"description":"The language of the text track. For a full list of supported language, use the [`/languages?filter=texttracks`](https://developer.vimeo.com/api/reference/videos#get_languages) endpoint.","example":"en-US","type":"string"},"name":{"description":"The name of the text track.","example":"Commentary","type":"string"},"type":{"description":"The type of the text track.\n\nOption descriptions:\n * `captions` - The text track is the captions type.\n * `chapters` - The text track is the chapters type.\n * `descriptions` - The text track is the descriptions type.\n * `metadata` - The text track is the metadata type.\n * `subtitles` - The text track is the subtitles type.\n","enum":["captions","chapters","descriptions","metadata","subtitles"],"type":"string"}},"required":["language","name","type"]}}}},"responses":{"201":{"description":"The text track was added.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/text-track"}}}},"403":{"description":"* The authenticated user can't add the text track.\n* Error code 2204: The request contains errors.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["upload"]}]}},"/channels/{channel_id}/videos/{video_id}/versions":{"get":{"summary":"Get all the versions of a video","description":"This method returns every version of the specified video. The authenticated user must be the owner of the video.","operationId":"get_video_versions_alt1","tags":["Videos\\Versions"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"Standard request.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video-version"}}}}},"401":{"description":"* Error code 3200: The authenticated user can't access the video versions.\n* Error code 8003: The user credentials are invalid.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"No such video exists.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/contentratings":{"get":{"summary":"Get all content ratings","description":"This method returns all available content ratings.","operationId":"get_content_ratings","tags":["Videos\\Content ratings"],"responses":{"200":{"description":"The content ratings were returned.","content":{"application/vnd.vimeo.contentrating+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/content-rating"}}}}}}}},"/creativecommons":{"get":{"summary":"Get all Creative Commons licenses","description":"This method returns all available Creative Commons licenses.","operationId":"get_cc_licenses","tags":["Videos\\Creative Commons"],"responses":{"200":{"description":"The Creative Commons licenses were returned.","content":{"application/vnd.vimeo.creativecommons+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/creative-commons"}}}}}}}},"/destination/{destination_id}":{"delete":{"summary":"Delete the destination by destination id","description":"This method deletes destination by destination id.","operationId":"delete_live_event_destination","tags":["Live\\Event destinations"],"parameters":[{"description":"The ID of the destination.","in":"path","name":"destination_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The destination was deleted."},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't access destination.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such destination exists.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]},"get":{"summary":"Get the destination by destination id","description":"This method returns destination by destination id.","operationId":"get_live_event_destination","tags":["Live\\Event destinations"],"parameters":[{"description":"The ID of the destination.","in":"path","name":"destination_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The destination was returned.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/live-event-destination"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't access destination.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such destination exists.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]},"patch":{"summary":"Update the destination by destination id","description":"This method updates destination by destination id.","operationId":"update_live_event_destination","tags":["Live\\Event destinations"],"parameters":[{"description":"The ID of the destination.","in":"path","name":"destination_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The destination was returned.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/live-event-destination"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't access destination.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such destination exists.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]}},"/groups":{"get":{"summary":"Get all groups","description":"This method returns every available group.","operationId":"get_groups","tags":["Groups\\Essentials"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `featured` - Return featured groups.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["featured"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by creation date.\n * `followers` - Sort the results by number of followers.\n * `relevant` - Sort the results by relevance. This option is available for search queries only.\n * `videos` - Sort the results by number of videos.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","followers","relevant","videos"]}}],"responses":{"200":{"description":"The groups were returned.","content":{"application/vnd.vimeo.group+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/group"}}}}}}},"post":{"summary":"Create a group","description":"This method creates a new group.","operationId":"create_group","tags":["Groups\\Essentials"],"requestBody":{"required":true,"content":{"application/vnd.vimeo.group+json":{"schema":{"type":"object","properties":{"description":{"description":"The description of the group.","example":"Want to participate in our weekly challenges? Join the group to receive messages and new challenges!","type":"string"},"name":{"description":"The name of the group.","example":"Vimeo Weekend Challenge","type":"string"}},"required":["name"]}}}},"responses":{"200":{"description":"The group was created.","content":{"application/vnd.vimeo.group+json":{"schema":{"$ref":"#/components/schemas/group"}}}},"400":{"description":"A parameter is invalid.","content":{"application/vnd.vimeo.group+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user can't create groups.","content":{"application/vnd.vimeo.group+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["create"]}]}},"/groups/{group_id}":{"delete":{"summary":"Delete a group","description":"This method deletes the specified group. The authenticated user must be the owner of the group.","operationId":"delete_group","tags":["Groups\\Essentials"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}}],"responses":{"204":{"description":"The group was deleted."},"403":{"description":"The authenticated user can't delete the group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific group","description":"This method returns the specified group.","operationId":"get_group","tags":["Groups\\Essentials"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}}],"responses":{"200":{"description":"The group was returned.","content":{"application/vnd.vimeo.group+json":{"schema":{"$ref":"#/components/schemas/group"}}}}}}},"/groups/{group_id}/users":{"get":{"summary":"Get all the members of a group","description":"This method returns every user who belongs to the specified group.","operationId":"get_group_members","tags":["Groups\\Users"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `moderators` - Return group moderators.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["moderators"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by creation date.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The members were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}},"404":{"description":"No such group exists.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/groups/{group_id}/videos":{"get":{"summary":"Get all the videos in a group","description":"This method returns every video from the specified group.","operationId":"get_group_videos","tags":["Groups\\Videos"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `embeddable` - Return embeddable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by creation date.\n * `duration` - Sort the results by duration.\n * `likes` - Sort the results by number of likes.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","duration","likes","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"304":{"description":"No videos have been added to the group since the given `If-Modified-Since` header."},"404":{"description":"No such group exists.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/groups/{group_id}/videos/{video_id}":{"delete":{"summary":"Remove a video from a group","description":"This method removes a video from the specified group. The authenticated user must be the owner of the group.","operationId":"delete_video_from_group","tags":["Groups\\Videos"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was removed."},"403":{"description":"The authenticated user can't remove the video from the group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific video in a group","description":"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":"get_group_video","tags":["Groups\\Videos"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The video was returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"404":{"description":"No such video or group exists.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Add a video to a group","description":"This method adds a video to the specified group. The authenticated user must be the owner of the group.","operationId":"add_video_to_group","tags":["Groups\\Videos"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The video was added.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"202":{"description":"The video is in pending status."},"403":{"description":"* The video is already in the group.\n* The authenticated user can't add videos to the group.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/languages":{"get":{"summary":"Get all languages","description":"This method returns all available video languages.","operationId":"get_languages","tags":["Videos\\Languages"],"parameters":[{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `texttracks` - Return languages that can be used for text tracks.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["texttracks"]}}],"responses":{"200":{"description":"The languages were returned.","content":{"application/vnd.vimeo.language+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/language"}}}}}}}},"/me":{"get":{"summary":"Get the user","description":"This method returns the authenticated user.","operationId":"get_user_alt1","tags":["Users\\Essentials"],"responses":{"200":{"description":"The user was returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/user"}}}}}},"patch":{"summary":"Edit the user","description":"This method edits the Vimeo account of the authenticated user.","operationId":"edit_user_alt1","tags":["Users\\Essentials"],"requestBody":{"required":false,"content":{"application/vnd.vimeo.user+json":{"schema":{"type":"object","properties":{"bio":{"description":"The user's bio.","example":"This is where you will find videos and news updates from the staff","type":"string"},"content_filter":{"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.","items":{"type":"string"},"type":"array"},"gender":{"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","enum":["f","m","n","o"],"type":"string"},"link":{"description":"The user's custom Vimeo URL.","example":"staff","type":"string"},"location":{"description":"The user's location.","example":"New York City","type":"string"},"name":{"description":"The user's display name.","example":"Vimeo Staff","type":"string"},"password":{"description":"The default password for all future videos that this user uploads. To use this field, the **videos.privacy.view** field must be `password`.","example":"hunter1","type":"string"},"videos":{"properties":{"privacy":{"properties":{"add":{"description":"Whether the user can add videos to showcases, channels, or groups by default.","example":true,"type":"boolean"},"comments":{"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","enum":["anybody","contacts","nobody"],"type":"string"},"download":{"description":"Whether the user can download videos. This value becomes the default download setting for all future videos that the user uploads.","example":true,"type":"boolean"},"embed":{"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","enum":["private","public","whitelist"],"type":"string"},"view":{"description":"Who can access the user's videos by default.\n\nOption descriptions:\n * `anybody` - Anyone can access the videos.\n * `contacts` - Only the user's contacts can access the videos.\n * `disable` - The videos are disabled.\n * `nobody` - No one can access the videos.\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.\n","enum":["anybody","contacts","disable","nobody","password","unlisted","users"],"type":"string"}},"type":"object"}},"type":"object"}}}}}},"responses":{"200":{"description":"The user's Vimeo account was edited.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/user"}}}},"400":{"description":"Error code 2204: A parameter is invalid.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/error"}}}}}}},"/me/albums":{"get":{"summary":"Get all the showcases that belong to the user","description":"This method returns every showcase belonging to the authenticated user.","operationId":"get_showcases_alt1","tags":["Showcases\\Essentials"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date of creation.\n * `duration` - Sort the results by duration.\n * `videos` - Sort the results by the number of videos.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","duration","videos"]}}],"responses":{"200":{"description":"The showcases were returned.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/album"}}}}},"400":{"description":"A parameter is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Create a showcase","description":"This method creates a new showcase for the specified user.","operationId":"create_showcase_alt1","tags":["Showcases\\Essentials"],"requestBody":{"required":true,"content":{"application/vnd.vimeo.album+json":{"schema":{"type":"object","properties":{"brand_color":{"description":"The hexadecimal code for the color of the player buttons and showcase controls.","example":"ff66ee","type":"string"},"description":{"description":"The description of the showcase.","example":"Vimeo holiday videos!","type":"string"},"hide_nav":{"description":"Whether to hide Vimeo navigation when displaying the showcase.","example":true,"type":"boolean"},"hide_upcoming":{"description":"Whether to include the upcoming live event in the showcase.","example":false,"type":"boolean"},"layout":{"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","enum":["grid","player"],"type":"string"},"name":{"description":"The name of the showcase.","example":"Vimeo Holiday Videos!","type":"string"},"password":{"description":"The showcase's password. This field is required only when **privacy** is `password`.","example":"hunter1","type":"string"},"privacy":{"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","enum":["anybody","embed_only","nobody","password","team"],"type":"string"},"review_mode":{"description":"Whether showcase videos use the review mode URL.","example":true,"type":"boolean"},"sort":{"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","enum":["added_first","added_last","alphabetical","arranged","comments","likes","newest","oldest","plays"],"type":"string"},"theme":{"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","enum":["dark","standard"],"type":"string"}},"required":["name"]}}}},"responses":{"201":{"description":"The showcase was created.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/album"}}}},"400":{"description":"A parameter is invalid.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The supplied token doesn't have the proper scopes, or the authenticated user can't create showcases.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["create"]}]}},"/me/albums/{album_id}":{"delete":{"summary":"Delete a showcase","description":"This method deletes the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"delete_showcase_alt1","tags":["Showcases\\Essentials"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}}],"responses":{"204":{"description":"The showcase was deleted."},"403":{"description":"The supplied token doesn't have the proper scopes, or the authenticated user can't delete the showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific showcase","description":"This method returns the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"get_showcase_alt1","tags":["Showcases\\Essentials"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}}],"responses":{"200":{"description":"The showcase was returned.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/album"}}}},"404":{"description":"No such showcase exists.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"patch":{"summary":"Edit a showcase","description":"This method edits the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"edit_showcase_alt1","tags":["Showcases\\Essentials"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.album+json":{"schema":{"type":"object","properties":{"brand_color":{"description":"The hexadecimal code for the color of the player buttons and showcase controls.","example":"ff66ee","type":"string"},"description":{"description":"The description of the showcase.","example":"Vimeo holiday videos!","type":"string"},"domain":{"description":"The custom domain of the showcase.","example":"mycustomdomain.com","nullable":true,"type":"string"},"hide_nav":{"description":"Whether to hide Vimeo navigation when displaying the showcase.","example":true,"type":"boolean"},"hide_upcoming":{"description":"Whether to include the upcoming live event in the showcase.","example":false,"type":"boolean"},"layout":{"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","enum":["grid","player"],"type":"string"},"name":{"description":"The name of the showcase.","example":"Vimeo Holiday Videos!","type":"string"},"password":{"description":"The showcase's password. This field is required only when **privacy** is `password`.","example":"hunter1","type":"string"},"privacy":{"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","enum":["anybody","embed_only","nobody","password","team"],"type":"string"},"review_mode":{"description":"Whether showcase videos use the review mode URL.","example":true,"type":"boolean"},"sort":{"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","enum":["added_first","added_last","alphabetical","arranged","comments","likes","newest","oldest","plays"],"type":"string"},"theme":{"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","enum":["dark","standard"],"type":"string"},"url":{"description":"The custom Vimeo URL of the showcase.","example":"my-custom-url","nullable":true,"type":"string"},"use_custom_domain":{"description":"Whether the user has opted for a custom domain for their showcase.","example":true,"type":"boolean"}}}}}},"responses":{"200":{"description":"The showcase was edited.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/album"}}}},"400":{"description":"A parameter is invalid.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user doesn't own the showcase, the supplied token doesn't have the proper scopes, or the authenticated user can't edit the showcase.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/me/albums/{album_id}/videos":{"get":{"summary":"Get all the videos in a showcase","description":"This method returns every video in the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"get_showcase_videos_alt1","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The page containing the video URI.","in":"query","name":"containing_uri","required":false,"schema":{"type":"string","example":"/videos/258684937"}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `embeddable` - Filter the results by the **embeddable** attribute.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The password of the showcase.","in":"query","name":"password","required":false,"schema":{"type":"string","example":"hunter1"}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by date.\n * `default` - Sort the results by the default method.\n * `duration` - Sort the results by duration.\n * `likes` - Sort the results by number of likes.\n * `manual` - Sort the results by their manual order.\n * `modified_time` - Sort the results by last modification.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","default","duration","likes","manual","modified_time","plays"]}},{"description":"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.","in":"query","name":"weak_search","required":false,"schema":{"type":"boolean","example":false}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"404":{"description":"No such showcase exists.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Replace all the videos in a showcase","description":"This method replaces all the videos in the specified showcase with a new set of one or more videos. The authenticated user must be the owner of the showcase.","operationId":"replace_videos_in_showcase_alt1","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"videos":{"description":"A comma-separated list of video URIs corresponding to the videos to add.","example":"/videos/258684937,/videos/273576296","type":"string"}},"required":["videos"]}}}},"responses":{"201":{"description":"The videos were added."},"403":{"description":"The authenticated user can't add videos to the showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/me/albums/{album_id}/videos/{video_id}":{"delete":{"summary":"Remove a video from a showcase","description":"This method removes the specified video from its showcase. The authenticated user must be the owner of the showcase.","operationId":"remove_video_from_showcase_alt1","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":196367152}}],"responses":{"204":{"description":"The video was removed."},"403":{"description":"The supplied token doesn't have the proper scopes, or the authenticated user can't remove videos from the showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific video in a showcase","description":"This method returns a single video belonging to the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"get_showcase_video_alt1","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":196367152}},{"description":"The password of the showcase.","in":"query","name":"password","required":false,"schema":{"type":"string","example":"hunter1"}}],"responses":{"200":{"description":"The video was returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"404":{"description":"No such showcase exists, or the video doesn't belong to it.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Add a specific video to a showcase","description":"This method adds a single video to the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"add_video_to_showcase_alt1","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":196367152}}],"responses":{"204":{"description":"The video was added."},"403":{"description":"The supplied token doesn't have the proper scopes, or the authenticated user can't add videos to the showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/me/albums/{album_id}/videos/{video_id}/set_album_thumbnail":{"post":{"summary":"Create a thumbnail for a showcase from a showcase video","description":"This method creates a thumbnail image for a showcase from the specified frame of a showcase video. The authenticated user must be the owner of the showcase.","operationId":"set_video_as_showcase_thumbnail_alt1","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":196367152}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"time_code":{"description":"The time in seconds of the video frame to use as the thumbnail image.","example":300,"type":"number"}}}}}},"responses":{"200":{"description":"The showcase thumbnail was created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/album"}}}},"403":{"description":"Error code 3429: The authenticated user can't create a thumbnail for this showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such showcase, user, or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"500":{"description":"Error code 4016: An unexpected error occurred.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]}},"/me/albums/{album_id}/videos/{video_id}/set_featured_video":{"patch":{"summary":"Set the featured video of a showcase","description":"This method sets the featured video of the specified showcase. The authenticated user must be the owner of the showcase, and the featured video must belong to it.","operationId":"set_video_as_showcase_featured_alt1","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":196367152}}],"responses":{"200":{"description":"The video is now the featured video of the showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/album"}}}},"403":{"description":"Error code 3429: The authenticated user can't set the featured video of this showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such showcase, user, or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]}},"/me/appearances":{"get":{"summary":"Get all the videos in which the user appears","description":"This method returns all the videos in which the authenticated user has a credited appearance.","operationId":"get_appearances_alt1","tags":["Videos\\Essentials"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `embeddable` - Return embeddable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by date.\n * `duration` - Sort the results by duration.\n * `likes` - Sort the results by number of likes.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","duration","likes","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}}}}},"/me/categories":{"get":{"summary":"Get all the categories that the user follows","description":"This method returns every category that the authenticated user follows.","operationId":"get_category_subscriptions_alt1","tags":["Categories\\Users"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date.\n * `name` - Sort the results by name.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","name"]}}],"responses":{"200":{"description":"The categories were returned.","content":{"application/vnd.vimeo.category+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/category"}}}}},"403":{"description":"Error code 3200: Only the authenticated user can access this information.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]}},"/me/categories/{category}":{"delete":{"summary":"Cause the user to stop following a category","description":"This method causes the authenticated user to stop following the specified category.","operationId":"unsubscribe_from_category_alt1","tags":["Categories\\Users"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"string","example":"animation"}}],"responses":{"204":{"description":"The user has stopped following the category."}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Check if the user follows a category","description":"This method determines whether the authenticated user follows the specified category.","operationId":"check_if_user_subscribed_to_category_alt1","tags":["Categories\\Users"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"string","example":"animation"}}],"responses":{"204":{"description":"The user is following the category."}},"security":[{"oauth2":["private"]}]},"put":{"summary":"Cause the user to follow a specific category","description":"This method causes the authenticated user to follow the specified category.","operationId":"subscribe_to_category_alt1","tags":["Categories\\Users"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"number","example":0}}],"responses":{"204":{"description":"The user is following the category."}},"security":[{"oauth2":["interact"]}]}},"/me/channels":{"get":{"summary":"Get all the channels to which a user subscribes","description":"This method returns all the channels to which the specified user subscribes.","operationId":"get_channel_subscriptions_alt1","tags":["Channels\\Essentials"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `moderated` - Return moderated channels.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["moderated"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by creation date.\n * `followers` - Sort the results by number of followers.\n * `videos` - Sort the results by number of videos.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","followers","videos"]}}],"responses":{"200":{"description":"The channels were returned.","content":{"application/vnd.vimeo.channel+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/channel"}}}}},"304":{"description":"No channel has been followed since the given `If-Modified-Since` header."}}}},"/me/channels/{channel_id}":{"delete":{"summary":"Unsubscribe the user from a specific channel","description":"This method unsubscribes the authenticated user from the specified channel.","operationId":"unsubscribe_from_channel_alt1","tags":["Channels\\Subscriptions and subscribers"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"responses":{"204":{"description":"The user is unsubscribed from the channel."},"404":{"description":"No such channel exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Check if a user follows a channel","description":"This method determines whether the specified user is a follower of a particular channel.","operationId":"check_if_user_subscribed_to_channel_alt1","tags":["Channels\\Subscriptions and subscribers"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"responses":{"204":{"description":"The user follows the channel."},"404":{"description":"No such channel exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Subscribe the user to a specific channel","description":"This method subscribes the authenticated user to the specified channel.","operationId":"subscribe_to_channel_alt1","tags":["Channels\\Subscriptions and subscribers"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}}],"responses":{"204":{"description":"The user is subscribed to the channel."},"404":{"description":"No such channel exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]}},"/me/customlogos":{"get":{"summary":"Get all the custom logos that belong to the user","description":"This method returns every custom logo that belongs to the authenticated user or team owner.","operationId":"get_custom_logos_alt1","tags":["Embed Presets\\Custom logos"],"responses":{"200":{"description":"The custom logos were returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/picture"}}}}},"403":{"description":"The authenticated user can't access the custom logos.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Add a custom logo for the user","description":"This method adds a custom logo representing the authenticated user for display in the embedded player.","operationId":"create_custom_logo_alt1","tags":["Embed Presets\\Custom logos"],"responses":{"201":{"description":"The custom logo was added.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't add the custom logo.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["upload"]}]}},"/me/customlogos/{logo_id}":{"delete":{"summary":"delete a specific custom logo for the user","description":"This method deletes a single custom logo belonging to the authenticated user.","operationId":"delete_custom_logo_alt1","tags":["Embed Presets\\Custom logos"],"parameters":[{"description":"The ID of the custom logo.","in":"path","name":"logo_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"204":{"description":"The custom logo was deleted."},"403":{"description":"The authenticated user can't access the custom logo.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific custom logo for the user","description":"This method returns a single custom logo belonging to the authenticated user.","operationId":"get_custom_logo_alt1","tags":["Embed Presets\\Custom logos"],"parameters":[{"description":"The ID of the custom logo.","in":"path","name":"logo_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The custom logo was returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't access the custom logo.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/me/destinations":{"get":{"summary":"Get available destinations for user to stream to","description":"This method returns available destinations for user to stream to.","operationId":"get_available_destinations_alt1","tags":["Live\\Event destinations"],"responses":{"200":{"description":"Available destination were returned"},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3422: The authenticated user can't live simulcast.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]}},"/me/feed":{"get":{"summary":"Get all the videos in the user's feed","description":"This method returns every video in the authenticated user's feed.","operationId":"get_feed_alt1","tags":["Users\\Feeds"],"parameters":[{"description":"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](https://developer.vimeo.com/api/common-formats#using-the-pagination-parameter).","in":"query","name":"offset","required":false,"schema":{"type":"string","example":"280"}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The feed type.\n\nOption descriptions:\n * `appears` - Videos in which the user appears.\n * `category_featured` - Featured videos.\n * `channel` - Channel videos.\n * `facebook_feed` - Videos from the user's Facebook feed.\n * `following` - Videos from accounts that the user follows.\n * `group` - Group videos.\n * `likes` - Liked videos.\n * `ondemand_publish` - On Demand videos.\n * `share` - Shared videos.\n * `tagged_with` - Tagged videos.\n * `twitter_timeline` - Videos from the user's Twitter timeline.\n * `uploads` - Uploaded videos.\n","in":"query","name":"type","required":false,"schema":{"type":"string","enum":["appears","category_featured","channel","facebook_feed","following","group","likes","ondemand_publish","share","tagged_with","twitter_timeline","uploads"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.activity+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/activity-3-1"}}}}}},"security":[{"oauth2":["private"]}]}},"/me/followers":{"get":{"summary":"Get all the followers of the user","description":"This method returns every follower of the authenticated user.","operationId":"get_followers_alt1","tags":["Users\\Followers"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date followed.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The user's followers were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}}}}},"/me/following":{"get":{"summary":"Get all the users that the user is following","description":"This method returns every user that the authenticated user is following.","operationId":"get_user_following_alt1","tags":["Users\\Followers"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `online` - Return users who are currently online.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["online"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date followed.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The followed users were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}}}},"post":{"summary":"Follow a list of users","description":"This method causes the authenticated user to become the follower of multiple users. In the body of the request, specify the list of users to follow as\nan array of URIs, where `user01_id`, `user02_id`, `user03_id`, and so on, are the user IDs of the users in question:\n\n```\n{\n [\n {\"uri\" : \"/users/{user01_id}\"},\n {\"uri\" : \"/users/{user02_id}\"},\n {\"uri\" : \"/users/{user03_id}\"}\n ]\n}\n```","operationId":"follow_users_alt1","tags":["Users\\Followers"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"users":{"description":"An array of user IDs for the authenticated user to follow.","items":{"type":"string"},"type":"array"}},"required":["users"]}}}},"responses":{"204":{"description":"The users were followed."},"400":{"description":"* Error code 2205: The request body is empty, the users array is invalid, or the list of users doesn't contain URIs.\n* Error code 2900: A user in the list doesn't exist.\n* Error code 2901: The list contains more than 100 users.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8000: The user access token is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"* Error code 3417: The authenticated user can't follow other users.\n* Error code 3438: The authenticated user can't follow other users because email is not verified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"429":{"description":"Error code 9006: The authenticated user is rate-limited from following other users.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"500":{"description":"Error code 4005: An unexpected error occurred.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["interact"]}]}},"/me/following/{follow_user_id}":{"delete":{"summary":"Unfollow a user","description":"This method causes the authenticated user to stop following another user.","operationId":"unfollow_user_alt1","tags":["Users\\Followers"],"parameters":[{"description":"The ID of the user to unfollow.","in":"path","name":"follow_user_id","required":true,"schema":{"type":"number","example":3766357}}],"responses":{"204":{"description":"The user was unfollowed."}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Check if the user is following another user","description":"This method determines whether the authenticated user is a follower of the specified user.","operationId":"check_if_user_is_following_alt1","tags":["Users\\Followers"],"parameters":[{"description":"The ID of the user to follow.","in":"path","name":"follow_user_id","required":true,"schema":{"type":"number","example":3766357}}],"responses":{"204":{"description":"The authenticated user follows the specified user."},"404":{"description":"The authenticated user doesn't follow the specified user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Follow a specific user","description":"This method causes the authenticated user to become the follower of the specified user.","operationId":"follow_user_alt1","tags":["Users\\Followers"],"parameters":[{"description":"The ID of the user to follow.","in":"path","name":"follow_user_id","required":true,"schema":{"type":"number","example":3766357}}],"responses":{"204":{"description":"The user was followed."},"403":{"description":"* The authenticated user can't follow other users.\n* Error code 3438: The authenticated user can't follow other users because email is not verified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]}},"/me/groups":{"get":{"summary":"Get all the groups that the user has joined","description":"This method returns every group to which the authenticated user belongs.","operationId":"get_user_groups_alt1","tags":["Groups\\Users"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `moderated` - Return moderated groups.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["moderated"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by creation date.\n * `members` - Sort the results by number of members.\n * `videos` - Sort the results by number of videos.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","members","videos"]}}],"responses":{"200":{"description":"The groups were returned.","content":{"application/vnd.vimeo.group+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/group"}}}}}}}},"/me/groups/{group_id}":{"delete":{"summary":"Remove the user from a group","description":"This method removes the authenticated user from the specified group. The authenticated user can't be the owner of the group; assign a new owner through a PATCH request first.","operationId":"leave_group_alt1","tags":["Groups\\Subscriptions"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}}],"responses":{"204":{"description":"The user was removed from the group."},"403":{"description":"The authenticated user can't leave the group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]},"put":{"summary":"Add the user to a group","description":"This method adds the authenticated user to the specified group.","operationId":"join_group_alt1","tags":["Groups\\Subscriptions"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}}],"responses":{"204":{"description":"The user joined the group."},"403":{"description":"The authenticated user can't join the group. Possible reasons are that the group isn't public or that its privacy setting is `members`.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Check if a user has joined a group","description":"This method determines whether the authenticated user belongs to the specified group.","operationId":"check_if_user_joined_group_alt1","tags":["Groups\\Users"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}}],"responses":{"204":{"description":"The user belongs to the group."},"404":{"description":"* No such group exists.\n* The authenticated user isn't a member of the group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/me/likes":{"get":{"summary":"Get all the videos that a user has liked","description":"This method returns every video that the authenticated user has liked.","operationId":"get_likes_alt1","tags":["Likes\\Essentials"],"parameters":[{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `embeddable` - Return embeddable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by creation date.\n * `duration` - Sort the results by duration.\n * `likes` - Sort the results by number of likes.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","duration","likes","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}}}}},"/me/likes/{video_id}":{"delete":{"summary":"Cause a user to unlike a video","description":"This method causes the authenticated user to unlike the specified video.","operationId":"unlike_video_alt1","tags":["Likes\\Essentials"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was unliked."},"403":{"description":"The authenticated user can't like videos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Check if the user has liked a video","description":"This method checks if the authenticated user has liked the specified video.","operationId":"check_if_user_liked_video_alt1","tags":["Likes\\Essentials"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The user has liked the video."},"404":{"description":"The user hasn't liked the video.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Cause the user to like a video","description":"This method causes the authenticated user to like the specified video. The user can't like their own video.","operationId":"like_video_alt1","tags":["Likes\\Essentials"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was liked."},"400":{"description":"The authenticated user owns the video and can't like it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user can't like videos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]}},"/me/ondemand/pages":{"get":{"summary":"Get all the On Demand pages of the user","description":"This method returns every On Demand page belonging to the authenticated user.","operationId":"get_user_vods_alt1","tags":["On Demand\\Essentials"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The type of pages to return.","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["film","series"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["added","alphabetical","date","modified_time","name","publish.time","rating"]}}],"responses":{"200":{"description":"The On Demand pages were returned.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/on-demand-page"}}}}},"404":{"description":"No such user exists.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Create an On Demand page","description":"This method creates a new On Demand page for the specified user. To publish the page, use the edit method.","operationId":"create_vod_alt1","tags":["On Demand\\Essentials"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"accepted_currencies":{"description":"An array of accepted currencies.\n\nOption descriptions:\n * `AUD` - Australian Dollar\n * `CAD` - Canadian Dollar\n * `CHF` - Swiss Franc\n * `DKK` - Danish Krone\n * `EUR` - Euro\n * `GBP` - British Pound\n * `JPY` - Japanese Yen\n * `KRW` - South Korean Won\n * `NOK` - Norwegian Krone\n * `PLN` - Polish Zloty\n * `SEK` - Swedish Krona\n * `USD` - US Dollar\n","enum":["AUD","CAD","CHF","DKK","EUR","GBP","JPY","KRW","NOK","PLN","SEK","USD"],"type":"string"},"buy":{"properties":{"active":{"description":"Whether the video can be purchased. This parameter is required when **rent.active** is `false`.","example":true,"type":"boolean"},"download":{"description":"Whether people who buy the video can download it. To use this parameter, **type** must be `film`.","example":true,"type":"boolean"},"price":{"properties":{"AUD":{"description":"The purchase price of the video in Australian dollars.","example":2.99,"type":"number"},"CAD":{"description":"The purchase price of the video in Canadian dollars.","example":2.99,"type":"number"},"CHF":{"description":"The purchase price of the video in Swiss francs.","example":2.99,"type":"number"},"DKK":{"description":"The purchase price of the video in Danish krone.","example":2.99,"type":"number"},"EUR":{"description":"The purchase price of the video in euros.","example":2.99,"type":"number"},"GBP":{"description":"The purchase price of the video in British pounds.","example":2.99,"type":"number"},"JPY":{"description":"The purchase price of the video in Japanese yen.","example":2.99,"type":"number"},"KRW":{"description":"The purchase price of the video in South Korean won.","example":2.99,"type":"number"},"NOK":{"description":"The purchase price of the video in Norwegian krone.","example":2.99,"type":"number"},"PLN":{"description":"The purchase price of the video in Polish zloty.","example":2.99,"type":"number"},"SEK":{"description":"The purchase price of the video in Swedish krona.","example":2.99,"type":"number"},"USD":{"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 U.S. dollars.","example":2.99,"type":"number"}},"type":"object"}},"type":"object"},"content_rating":{"description":"One or more ratings, either as a comma-separated list or as a JSON array, depending on the request format.","enum":["drugs","language","nudity","safe","unrated","violence"],"type":"string"},"description":{"description":"The description of the On Demand page.","example":"DARBY FOREVER follows the fantasies of Darby, a shopgirl at \"Bobbins & Notions\".","type":"string"},"domain_link":{"description":"The custom domain of the On Demand page.","example":"https://example.com","type":"string"},"episodes":{"properties":{"buy":{"properties":{"active":{"description":"Whether episodes can be purchased.","example":true,"type":"boolean"},"download":{"description":"Whether people who buy episodes can download then. To use this parameter, **type** must be `series`.","example":true,"type":"boolean"},"price":{"properties":{"USD":{"description":"The purchase price per episode in U.S. dollars. This parameter is required when **episodes.buy.active** is `true`.","example":1.99,"type":"number"}},"type":"object"}},"type":"object"},"rent":{"properties":{"active":{"description":"Whether episodes can be rented.","example":true,"type":"boolean"},"period":{"description":"The rental period of the episode.","enum":["1 week","1 year","24 hour","3 month","30 day","48 hour","6 month","72 hour"],"type":"string"},"price":{"properties":{"USD":{"description":"The rental price per episode in U.S. dollars. This parameter is applicable only when **type** is `series`, and it's required when **episode.rent.active** is `true`.","example":0.99,"type":"number"}},"type":"object"}},"type":"object"}},"type":"object"},"link":{"description":"The custom string to use in the Vimeo URL of the On Demand page.","example":"darbyforever","type":"string"},"name":{"description":"The name of the On Demand page.","example":"Darby Forever","type":"string"},"rent":{"properties":{"active":{"description":"Whether the video can be rented. This parameter is required when **episodes.rent.active** is `true`.","example":true,"type":"boolean"},"period":{"description":"The rental period of the video.","enum":["1 week","1 year","24 hour","3 month","30 day","48 hour","6 month","72 hour"],"type":"string"},"price":{"properties":{"AUD":{"description":"The rental price of the video in Australian dollars.","example":0.99,"type":"number"},"CAD":{"description":"The rental price of the video in Canadian dollars.","example":0.99,"type":"number"},"CHF":{"description":"The rental price of the video in Swiss francs.","example":0.99,"type":"number"},"DKK":{"description":"The rental price of the video in Danish krone.","example":0.99,"type":"number"},"EUR":{"description":"The rental price of the video in euros.","example":0.99,"type":"number"},"GBP":{"description":"The rental price of the video in British pounds.","example":0.99,"type":"number"},"JPY":{"description":"The rental price of the video in Japanese yen.","example":0.99,"type":"number"},"KRW":{"description":"The rental price of the video in South Korean won.","example":0.99,"type":"number"},"NOK":{"description":"The rental price of the video in Norwegian krone.","example":0.99,"type":"number"},"PLN":{"description":"The rental price of the video in Polish zloty.","example":0.99,"type":"number"},"SEK":{"description":"The rental price of the video in Swedish krona.","example":0.99,"type":"number"},"USD":{"description":"The rental price of the video in U.S. dollars when `type` is `film`, or the rental price of the entire collection in U.S. dollars when `type` is `series`.","example":0.99,"type":"number"}},"type":"object"}},"type":"object"},"subscription":{"properties":{"monthly":{"properties":{"active":{"description":"Whether monthly subscription is active. This parameter is required when **rent.active** and **buy.active** are `false`.","example":true,"type":"boolean"},"price":{"properties":{"USD":{"description":"The monthly subscription price in U.S. dollars. This parameter is required when **rent.active** and **buy.active** are `false`.","example":9.99,"type":"number"}},"type":"object"}},"type":"object"}},"type":"object"},"type":{"description":"The type of On Demand page.","enum":["film","series"],"type":"string"}},"required":["content_rating","description","name","type"]}}}},"responses":{"201":{"description":"The On Demand page was created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/on-demand-page"}}}}}}},"/me/ondemand/purchases":{"get":{"summary":"Get all the On Demand purchases and rentals that the user has made","description":"This method returns every purchase and rental that the authenticated user has made across all On Demand pages.","operationId":"get_vod_purchases_alt1","tags":["On Demand\\Purchases and rentals"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The type of On Demand videos to show.\n\nOption descriptions:\n * `important` - This option shows the pages that are about to expire.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["all","expiring_soon","film","important","purchased","rented","series","subscription","unwatched","watched"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["added","alphabetical","date","name","purchase_time","rating","release_date"]}}],"responses":{"200":{"description":"The purchases and rentals were returned.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/on-demand-page"}}}}},"403":{"description":"The authenticated user can't get purchases and rentals for another user's account.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["purchased"]}]}},"/me/ondemand/purchases/{ondemand_id}":{"get":{"summary":"Check if a user has made a purchase or rental from an On Demand page","description":"This method determines whether the authenticated user has made a purchase or rental from the specified On Demand page.","operationId":"check_if_vod_was_purchased_alt1","tags":["On Demand\\Purchases and rentals"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"200":{"description":"The authenticated user has made this purchase.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/on-demand-page"}}}},"403":{"description":"The authenticated user can't make purchases for another user's account.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such user or On Demand page exists.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["purchased"]}]}},"/me/pictures":{"get":{"summary":"Get all the pictures that belong to the user","description":"This method returns every portrait image belonging to the authenticated user.","operationId":"get_pictures_alt1","tags":["Users\\Pictures"],"parameters":[{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The portrait images were returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/picture"}}}}}}},"post":{"summary":"Add a picture to the user's account","description":"This method adds a portrait image to the authenticated user's Vimeo account. Send the binary data of the image file to the location that you receive\nfrom the **link** field in the response. For step-by-step instructions, see\n[Working with Thumbnail Uploads](https://developer.vimeo.com/api/upload/thumbnails#uploading-a-thumbnail-step-3).","operationId":"create_picture_alt1","tags":["Users\\Pictures"],"responses":{"200":{"description":"The portrait image was added.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}}},"security":[{"oauth2":["upload"]}]}},"/me/pictures/{portraitset_id}":{"delete":{"summary":"Delete a picture from the user's account","description":"This method removes the specified portrait image from the authenticated user's Vimeo account.","operationId":"delete_picture_alt1","tags":["Users\\Pictures"],"parameters":[{"description":"The ID of the picture.","in":"path","name":"portraitset_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"204":{"description":"The portrait image was removed."}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific picture that belongs to the user","description":"This method returns a single portrait image belonging to the authenticated user.","operationId":"get_picture_alt1","tags":["Users\\Pictures"],"parameters":[{"description":"The ID of the picture.","in":"path","name":"portraitset_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The portrait image was returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}}}},"patch":{"summary":"Edit a picture in the user's account","description":"This method edits the specified portrait image belonging to the authenticated user.","operationId":"edit_picture_alt1","tags":["Users\\Pictures"],"parameters":[{"description":"The ID of the picture.","in":"path","name":"portraitset_id","required":true,"schema":{"type":"number","example":12345}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"object","properties":{"active":{"description":"Whether the picture is the authenticated user's active portrait.","example":true,"type":"boolean"}}}}}},"responses":{"200":{"description":"The portrait image was edited.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}}},"security":[{"oauth2":["edit"]}]}},"/me/portfolios":{"get":{"summary":"Get all the portfolios that belong to the user","description":"This method returns every portfolio belonging to the authenticated user.","operationId":"get_portfolios_alt1","tags":["Portfolios\\Essentials"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by creation date.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The portfolios were returned.","content":{"application/vnd.vimeo.portfolio+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/portfolio"}}}}}}}},"/me/portfolios/{portfolio_id}":{"get":{"summary":"Get a specific portfolio","description":"This method returns a single portfolio belonging to the authenticated user.","operationId":"get_portfolio_alt1","tags":["Portfolios\\Essentials"],"parameters":[{"description":"The ID of the portfolio.","in":"path","name":"portfolio_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The portfolio was returned.","content":{"application/vnd.vimeo.portfolio+json":{"schema":{"$ref":"#/components/schemas/portfolio"}}}}}}},"/me/portfolios/{portfolio_id}/videos":{"get":{"summary":"Get all the videos in a portfolio","description":"This method returns every video from the specified portfolio belonging to the authenticated user.","operationId":"get_portfolio_videos_alt1","tags":["Portfolios\\Videos"],"parameters":[{"description":"The ID of the portfolio.","in":"path","name":"portfolio_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The page that contains the video URI.","in":"query","name":"containing_uri","required":false,"schema":{"type":"string","example":"/videos/258684937"}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `embeddable` - Return embeddable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by creation date.\n * `default` - Use the default sorting method.\n * `likes` - Sort the results by number of likes.\n * `manual` - Sort the results by their user-specified order.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","default","likes","manual","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}}}}},"/me/portfolios/{portfolio_id}/videos/{video_id}":{"delete":{"summary":"Remove a video from a portfolio","description":"This method removes a video from the specified portfolio belonging to the authenticated user.","operationId":"delete_video_from_portfolio_alt1","tags":["Portfolios\\Videos"],"parameters":[{"description":"The ID of the portfolio.","in":"path","name":"portfolio_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was removed."},"404":{"description":"No such portfolio or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific video in a portfolio","description":"This method returns a single video from the specified portfolio belonging to the authenticated user.","operationId":"get_portfolio_video_alt1","tags":["Portfolios\\Videos"],"parameters":[{"description":"The ID of the portfolio.","in":"path","name":"portfolio_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The video was returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}}}},"put":{"summary":"Add a video to a portfolio","description":"This method adds a video to the specified portfolio belonging to the authenticated user.","operationId":"add_video_to_portfolio_alt1","tags":["Portfolios\\Videos"],"parameters":[{"description":"The ID of the portfolio.","in":"path","name":"portfolio_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was added."},"404":{"description":"No such portfolio or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/me/presets":{"get":{"summary":"Get all the embed presets that a user has created","description":"This method returns every embed preset that belongs to the authenticated user.","operationId":"get_embed_presets_alt1","tags":["Embed Presets\\Essentials"],"parameters":[{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The embed presets were returned.","content":{"application/vnd.vimeo.preset+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/preset"}}}}}}}},"/me/presets/{preset_id}":{"get":{"summary":"Get a specific embed preset","description":"This method returns a single embed preset. The authenticated user must be the owner of the preset.","operationId":"get_embed_preset_alt1","tags":["Embed Presets\\Essentials"],"parameters":[{"description":"The ID of the preset.","in":"path","name":"preset_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The embed preset was returned.","content":{"application/vnd.vimeo.preset+json":{"schema":{"$ref":"#/components/schemas/preset"}}}}}},"patch":{"summary":"Edit an embed preset","description":"This method edits the specified embed preset. The authenticated user must be the owner of the preset.","operationId":"edit_embed_preset_alt1","tags":["Embed Presets\\Essentials"],"parameters":[{"description":"The ID of the preset.","in":"path","name":"preset_id","required":true,"schema":{"type":"number","example":12345}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.preset+json":{"schema":{"type":"object","properties":{"outro":{"description":"What to do with the outro.\n\nOption descriptions:\n * `nothing` - Disable the outro.\n","enum":["nothing"],"type":"string"}}}}}},"responses":{"200":{"description":"The embed preset was edited.","content":{"application/vnd.vimeo.preset+json":{"schema":{"$ref":"#/components/schemas/preset"}}}},"400":{"description":"The outro type is invalid.","content":{"application/vnd.vimeo.preset+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"* No such embed preset exists.\n* The authenticated user can't edit the embed preset.","content":{"application/vnd.vimeo.preset+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/me/presets/{preset_id}/videos":{"get":{"summary":"Get all the videos that have a specific embed preset","description":"This method returns every video to which the specified embed preset has been added. The authenticated user must be the owner of videos.","operationId":"get_embed_preset_videos_alt1","tags":["Embed Presets\\Videos"],"parameters":[{"description":"The ID of the embed preset.","in":"path","name":"preset_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}}}}},"/me/projects":{"get":{"summary":"Get all the folders that belong to the user","description":"This method returns all the folders belonging to the authenticated user.","operationId":"get_projects_alt1","tags":["Folders\\Essentials"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["date","default","modified_time","name"]}}],"responses":{"200":{"description":"The folders were returned.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/project"}}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]},"post":{"summary":"Create a folder","description":"This method creates a new folder for the authenticated user.","operationId":"create_project_alt1","tags":["Folders\\Essentials"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"The name of the folder.","example":"Rough cuts","type":"string"}},"required":["name"]}}}},"responses":{"201":{"description":"The folder was created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/project"}}}},"400":{"description":"* Error code 2205: The input is empty.\n* Error code 2204: The input is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't create folders.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["create"]}]}},"/me/projects/{project_id}":{"delete":{"summary":"Delete a folder","description":"This method deletes the specified folder and optionally also the videos that it contains. The authenticated user must be the owner of the folder.","operationId":"delete_project_alt1","tags":["Folders\\Essentials"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"Whether to delete all the videos in the folder along with the folder itself.","in":"query","name":"should_delete_clips","required":false,"schema":{"type":"boolean","example":true}}],"responses":{"204":{"description":"The folder was deleted."},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't delete the folder.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such folder exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific folder","description":"This method returns a single folder belonging to the authenticated user.","operationId":"get_project_alt1","tags":["Folders\\Essentials"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The folder was returned.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/project"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such folder exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}}},"patch":{"summary":"Edit a folder","description":"This method edits the specified folder. The authenticated user must be the owner of the folder.","operationId":"edit_project_alt1","tags":["Folders\\Essentials"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"The name of the folder.","example":"Rough cuts","type":"string"}},"required":["name"]}}}},"responses":{"200":{"description":"The folder was edited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/project"}}}},"400":{"description":"* Error code 2204: The input is invalid.\n* Error code 2205: The input is empty.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't edit the folder.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such folder exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]}},"/me/projects/{project_id}/videos":{"delete":{"summary":"Remove a list of videos from a folder","description":"This method removes multiple videos from the specified folder. The authenticated user must be the owner of the folder.","operationId":"remove_videos_from_project_alt1","tags":["Folders\\Videos"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"Whether to delete the videos when removing them from the folder.","in":"query","name":"should_delete_clips","required":false,"schema":{"type":"boolean","example":false}},{"description":"A comma-separated list of the video URIs to remove.","in":"query","name":"uris","required":true,"schema":{"type":"string","example":"/videos/258684937,/videos/273576296"}}],"responses":{"204":{"description":"The videos were removed."},"400":{"description":"Error code 2204: The input is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such folder exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Get all the videos in a folder","description":"This method returns all the videos that belong to the specified folder.","operationId":"get_project_videos_alt1","tags":["Folders\\Videos"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date.\n * `default` - Use the default sort order.\n * `duration` - Sort the results by duration.\n * `last_user_action_event_date` - Sort the results by the date of the last user action.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","default","duration","last_user_action_event_date"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such folder exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}}},"put":{"summary":"Add a list of videos to a folder","description":"This method adds multiple videos to the specified folder. The authenticated user must be the owner of the folder.","operationId":"add_videos_to_project_alt1","tags":["Folders\\Videos"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"A comma-separated list of video URIs to add.","in":"query","name":"uris","required":true,"schema":{"type":"string","example":"/videos/258684937,/videos/273576296"}}],"responses":{"204":{"description":"The videos were added."},"400":{"description":"Error code 2204: The input is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such folder or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["interact"]}]}},"/me/projects/{project_id}/videos/{video_id}":{"delete":{"summary":"Remove a specific video from a folder","description":"This method removes a single video from the specified folder. Note that this will not delete the video itself.","operationId":"remove_video_from_project_alt1","tags":["Folders\\Videos"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was removed."},"400":{"description":"Error code 2204: The input is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such video exists in the folder.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["delete"]}]},"put":{"summary":"Add a specific video to a folder","description":"This method adds a single video to the specified folder. The authenticated user must be the owner of the folder.","operationId":"add_video_to_project_alt1","tags":["Folders\\Videos"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was added."},"404":{"description":"Error code 5000: No such user, folder, or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["interact"]}]}},"/me/videos":{"get":{"summary":"Get all the videos that the user has uploaded","description":"This method returns all the videos that the authenticated user has uploaded.","operationId":"get_videos_alt1","tags":["Videos\\Essentials"],"parameters":[{"description":"The page that contains the video URI. The field is available only when not paired with **query**.","in":"query","name":"containing_uri","required":false,"schema":{"type":"string","example":"/videos/258684937"}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `app_only` - Return app-only videos.\n * `embeddable` - Return embeddable videos.\n * `featured` - Return featured videos.\n * `playable` - Return playable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["app_only","embeddable","featured","playable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"Whether to filter the results by playable videos (`true`) or non-playable videos (`false`).","in":"query","name":"filter_playable","required":false,"schema":{"type":"boolean","example":true}},{"description":"Whether to include content from the user's teams when searching.","in":"query","name":"include_team_content","required":false,"schema":{"type":"string","example":"true"}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically by title.\n * `date` - Sort the results by date.\n * `default` - Use the default sorting method.\n * `duration` - Sort the results by duration.\n * `last_user_action_event_date` - Sort the results by last user interaction.\n * `likes` - Sort the results by number of likes. To use this option, **direction** must be `desc`.\n * `modified_time` - Sort the results by last modification.\n * `plays` - Sort the results by number of plays. To use this option, **direction** must be `desc`.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","default","duration","last_user_action_event_date","likes","modified_time","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"304":{"description":"The authenticated user hasn't uploaded any videos since the given **If-Modified-Since** header."}}},"post":{"summary":"Upload a video","description":"This method begins the video upload process for the authenticated user. For more information, see our [upload documentation](https://developer.vimeo.com/api/upload/videos).","operationId":"upload_video_alt1","tags":["Videos\\Uploads"],"requestBody":{"required":true,"content":{"application/vnd.vimeo.video+json":{"schema":{"type":"object","properties":{"content_rating":{"description":"A list of values describing the content in this video. Find the full list in the [`/contentratings`](https://developer.vimeo.com/api/reference/videos#get_content_ratings) endpoint.","items":{"type":"string"},"type":"array"},"description":{"description":"The description of the video.","example":"A celebration of 10 years of Staff Picks.","type":"string"},"embed":{"properties":{"buttons":{"properties":{"embed":{"description":"Whether to show the embed button on the embeddable player.","example":true,"type":"boolean"},"fullscreen":{"description":"Whether to show the fullscreen button on the embeddable player.","example":true,"type":"boolean"},"hd":{"description":"Whether to show the HD button on the embeddable player.","example":true,"type":"boolean"},"like":{"description":"Whether to show the like button on the embeddable player.","example":true,"type":"boolean"},"scaling":{"description":"Whether to show the scaling button on the embeddable player in fullscreen mode.","example":true,"type":"boolean"},"share":{"description":"Whether to show the share button on the embeddable player.","example":true,"type":"boolean"},"watchlater":{"description":"Whether to show the watch later button on the embeddable player.","example":true,"type":"boolean"}},"type":"object"},"color":{"description":"The main color of the embeddable player.","example":"#1ab7ea","type":"string"},"logos":{"properties":{"custom":{"properties":{"active":{"description":"Whether to show the active custom logo on the embeddable player.","example":true,"type":"boolean"},"link":{"description":"The URL that loads when the user clicks the custom logo.","example":"https://example.com","type":"string"},"sticky":{"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`).","example":true,"type":"boolean"}},"type":"object"},"vimeo":{"description":"Whether to show the Vimeo logo on the embeddable player.","example":true,"type":"boolean"}},"type":"object"},"playbar":{"description":"Whether to show the playbar on the embeddable player.","example":true,"type":"boolean"},"title":{"properties":{"name":{"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","enum":["hide","show","user"],"type":"string"},"owner":{"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","enum":["hide","show","user"],"type":"string"},"portrait":{"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","enum":["hide","show","user"],"type":"string"}},"type":"object"},"volume":{"description":"Whether to show the volume selector on the embeddable player.","example":true,"type":"boolean"}},"type":"object"},"license":{"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 the public domain license.\n","enum":["by","by-nc","by-nc-nd","by-nc-sa","by-nd","by-sa","cc0"],"type":"string"},"locale":{"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.","example":"en_US","type":"string"},"name":{"description":"The title of the video.","example":"Celebrating 10 Years of Staff Picks","type":"string"},"password":{"description":"The password. This field is required when **privacy.view** is `password`.","example":"hunter1","type":"string"},"privacy":{"properties":{"add":{"description":"Whether a user can add the video to a showcase, channel, or group.","example":true,"type":"boolean"},"comments":{"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 video owner's contacts can comment on the video.\n * `nobody` - No one can comment on the video.\n","enum":["anybody","contacts","nobody"],"type":"string"},"download":{"description":"Whether a user can download the video. This field isn't available to Vimeo Basic members.","example":true,"type":"boolean"},"embed":{"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","enum":["private","public","whitelist"],"type":"string"},"view":{"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 Basic 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.\n * `contacts` - Only those who follow the owner on Vimeo can access the video.\n * `disable` - The video is embeddable, but it's hidden on Vimeo and can't be played.\n * `nobody` - No one except the owner can access the video.\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.\n","enum":["anybody","contacts","disable","nobody","password","unlisted","users"],"type":"string"}},"type":"object"},"review_page":{"properties":{"active":{"description":"Whether to enable video review.","example":true,"type":"boolean"}},"type":"object"},"spatial":{"properties":{"director_timeline":{"description":"An array representing the 360 director timeline.","items":{"type":"object","properties":{"pitch":{"description":"The 360 director timeline pitch. This value must be between −90 and 90, and it is required only when **spatial.director_timeline** is defined.","example":70,"type":"number"},"roll":{"description":"The 360 director timeline roll.","type":"number"},"time_code":{"description":"The 360 director timeline time code. This field is required only when **spatial.director_timeline** is defined.","example":5,"type":"number"},"yaw":{"description":"The 360 director timeline yaw. This value must be between 0 and 360, and it is required only when **spatial.director_timeline** is defined.","example":125,"type":"number"}},"required":["pitch","time_code","yaw"]},"type":"array"},"field_of_view":{"description":"The 360 field of view. This value must be between 30 and 90. The default is 50.","example":50,"type":"number"},"projection":{"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","enum":["cubical","cylindrical","dome","equirectangular","pyramid"],"type":"string"},"stereo_format":{"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","enum":["left-right","mono","top-bottom"],"type":"string"}},"type":"object"},"upload":{"properties":{"approach":{"description":"The upload approach.\n\nOption descriptions:\n * `post` - Use the `post` approach.\n * `pull` - Use the `pull` approach.\n * `streaming` - Use the `streaming` approach.\n * `tus` - Use the `tus` approach.\n","enum":["post","pull","streaming","tus"],"type":"string"},"link":{"description":"The public URL at which the video is hosted. The URL must be valid for at least 24 hours. Use this parameter when **approach** is `pull`.","example":"https://example.com/video.mp4","type":"string"},"redirect_url":{"description":"The app's redirect URL. Use this parameter when **approach** is `post`.","example":"https://example.com","type":"string"},"size":{"description":"The size in bytes of the video to upload.","example":"13623861","type":"string"}},"required":["approach"],"type":"object"}},"required":["upload"]}}}},"responses":{"201":{"description":"The upload procedure has begun.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"400":{"description":"* Error code 2205: The body of the request isn't formatted properly.\n* Error code 2204: The request contains invalid body parameters.\n* Error code 2230: The upload type is invalid.\n* Error code 3116: The **type** payload parameter was supplied. instead of **upload.approach**. Use **upload.approach** starting from API version 3.4.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8002: No user is associated with the access token.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"* Error code 4102: The authenticated user's allotted quota has been reached.\n* Error code 4101: The authenticated user's maximum disk space has been reached.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"500":{"description":"Error code 4003: There is a problem initiating the upload.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["upload"]}]}},"/me/videos/{video_id}":{"get":{"summary":"Check if the user owns a video","description":"This method determines whether the authenticated user is the owner of the specified video.","operationId":"check_if_user_owns_video_alt1","tags":["Videos\\Essentials"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The authenticated user owns the video.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"404":{"description":"The authenticated user doesn't own the video.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/me/videos/{video_id}/destinations":{"get":{"summary":"Get all the destinations of a one time event","description":"This method returns every destination of the specified one time event.","operationId":"get_one_time_event_destinations_alt1","tags":["Live\\Event destinations"],"parameters":[{"description":"The ID of the clip.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The one time event destinations were returned.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/live-event-destination"}}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't access the one time event destinations.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such live event or user exists.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]},"post":{"summary":"Create destination for live event","description":"This method creates a destination for the specified live event.","operationId":"create_one_time_event_destination_alt1","tags":["Live\\Event destinations"],"parameters":[{"description":"The ID of the clip.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't access the one time event destinations.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such live event or user exists.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]}},"/me/videos/{video_id}/m3u8_playback":{"get":{"summary":"Get an M3U8 playback URL for a one-time live event","description":"This method returns an M3U8 playback URL for the specified one-time live event stream. You should use this endpoint only in conjunction with our recommended procedure for playing live events via HLS. For more information, [see our HLS guide](https://developer.vimeo.com/api/live/playback).","operationId":"get_one_time_event_m3u8_playback_alt1","tags":["Videos\\Live M3U8 playback"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The M3U8 playback URL was returned."},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't access the M3U8 playback URL.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such live event or user exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]}},"/me/watched/videos":{"delete":{"summary":"Delete the user's watch history","description":"This method deletes the entire watch history of the authenticated user.","operationId":"delete_watch_history","tags":["Users\\Watch history"],"responses":{"204":{"description":"The authenticated user's watch history was deleted."}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get all the videos that a user has watched","description":"This method returns every video on the authenticated user's watch history.\n\n**NOTE:** This endpoint is deprecated. Any request to it returns empty data with HTTP status code 200.","operationId":"get_watch_history","tags":["Users\\Watch history"],"parameters":[{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"403":{"description":"The authenticated user can't view another user's watch history.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["private"]}]}},"/me/watched/videos/{video_id}":{"delete":{"summary":"Delete a specific video from the user's watch history","description":"This method deletes the specified video from the authenticated user's watch history.","operationId":"delete_from_watch_history","tags":["Users\\Watch history"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was deleted from the authenticated user's watch history."}},"security":[{"oauth2":["delete"]}]}},"/me/watchlater":{"get":{"summary":"Get all the videos in the user's Watch Later queue","description":"This method returns every video from the authenticated user's Watch Later queue.","operationId":"get_watch_later_queue_alt1","tags":["Watch Later Queue\\Essentials"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `embeddable` - Return embeddable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by date added.\n * `duration` - Sort the results by duration.\n * `likes` - Sort the results by number of likes.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","duration","likes","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"304":{"description":"The user hasn't added any videos to their Watch Later queue since the given `If-Modified-Since` header."}},"security":[{"oauth2":["private"]}]}},"/me/watchlater/{video_id}":{"delete":{"summary":"Remove a video from the user's Watch Later queue","description":"This method removes the specified video from the authenticated user's Watch Later queue.","operationId":"delete_video_from_watch_later_alt1","tags":["Watch Later Queue\\Essentials"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was removed."}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Check if the user has added a video to their Watch Later queue","description":"This method checks the authenticated user's Watch Later queue for the specified video.","operationId":"check_watch_later_queue_alt1","tags":["Watch Later Queue\\Essentials"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The video is in the user's Watch Later queue.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"404":{"description":"The video isn't in the user's Watch Later queue.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["private"]}]},"put":{"summary":"Add a video to the user's Watch Later queue","description":"This method adds the specified video to the authenticated user's Watch Later queue.","operationId":"add_video_to_watch_later_alt1","tags":["Watch Later Queue\\Essentials"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was added."}},"security":[{"oauth2":["interact"]}]}},"/oauth/access_token":{"post":{"summary":"Exchange an authorization code for an access token","description":"This method exchanges an OAuth authorization code for an OAuth access token.","operationId":"exchange_auth_code","tags":["Authentication Extras\\Exchange"],"requestBody":{"required":true,"content":{"application/vnd.vimeo.auth+json":{"schema":{"type":"object","properties":{"code":{"description":"The authorization code received from the authorization server.","example":"1234abcd","type":"string"},"grant_type":{"description":"The grant type. The value of this field must be `authorization_code`.","enum":["authorization_code"],"type":"string"},"redirect_uri":{"description":"The redirect URI. The value of this field must match the URI from `/oauth/authorize`.","example":"https://example.com","type":"string"}},"required":["code","grant_type","redirect_uri"]}}}},"responses":{"200":{"description":"The authorization code was exchanged.","content":{"application/vnd.vimeo.auth+json":{"schema":{"$ref":"#/components/schemas/auth"}}}},"400":{"description":"* The grant type is invalid.\n* The authorization code is invalid.\n* The redirect URI doesn't match the URI to create the authorization code.","content":{"application/vnd.vimeo.auth+json":{"schema":{"$ref":"#/components/schemas/auth-error"}}}}}}},"/oauth/authorize/allow":{"post":{"summary":"Authorize on a user's behalf for an access token or authorization code","description":"This method uses the OAuth protocol to authorize a client. For details on OAuth client authorization, see our [Working with Authentication](/api/authentication) guide or the [OAuth spec](https://tools.ietf.org/html/draft-ietf-oauth-v2-31#section-4.4).","operationId":"authorize","tags":["Authentication Extras\\Exchange"],"requestBody":{"required":true,"content":{"application/vnd.vimeo.auth+json":{"schema":{"type":"object","properties":{"client_id":{"description":"The client identifier of the Vimeo API app.","example":"cd89a20adde7a608f3331e71c37bdfa087bacbf3","type":"string"},"redirect_uri":{"description":"The redirect location registered to a particular Vimeo API app. This field is optional for API apps with exactly one redirect.","example":"https://example.com","type":"string"},"response_type":{"description":"The response type for this portion of the OAuth flow.","example":"code","type":"string"},"scope":{"description":"A space-separated list of the authentication [scopes](https://developer.vimeo.com/api/authentication#table-1 to access. The default value is `public private`.","example":"public","type":"string"},"signature":{"description":"The signature issued to the client at the onset of the OAuth flow.","example":"cd89a20adde7a608f3331e71c37bdfa087bacbf3","type":"string"},"state":{"description":"An opaque value used by the client to maintain state between the request and callback. The authorization server includes this value when redirecting the user agent back to the client.","example":"123abc","type":"string"}},"required":["client_id","redirect_uri","response_type"]}}}},"responses":{"200":{"description":"The authorization was successful."},"401":{"description":"Error code 8001: No such client secret exists.","content":{"application/vnd.vimeo.auth+json":{"schema":{"$ref":"#/components/schemas/error"}}}}}}},"/oauth/authorize/client":{"post":{"summary":"Authorize a client with OAuth","description":"This method uses the OAuth protocol to authorize a client. For details on OAuth client authorization, see our [Working with Authentication](/api/authentication) guide or the [OAuth spec](https://tools.ietf.org/html/draft-ietf-oauth-v2-31#section-4.4).","operationId":"client_auth","tags":["Authentication Extras\\Authenticate"],"requestBody":{"required":true,"content":{"application/vnd.vimeo.auth+json":{"schema":{"type":"object","properties":{"grant_type":{"description":"The grant type. The value of this field must be `client_credentials`.","enum":["client_credentials"],"type":"string"},"scope":{"description":"A space-separated list of the authentication scopes to access. The default is `public`.","example":"public","type":"string"}},"required":["grant_type","scope"]}}}},"responses":{"200":{"description":"The authorization was successful.","content":{"application/vnd.vimeo.auth+json":{"schema":{"$ref":"#/components/schemas/auth"}}}},"401":{"description":"Error code 8001: No such client secret exists.","content":{"application/vnd.vimeo.auth+json":{"schema":{"$ref":"#/components/schemas/error"}}}}}}},"/oauth/authorize/vimeo_oauth1":{"post":{"summary":"Convert an OAuth 1 access token to an OAuth 2 access token","description":"This method exchanges a legacy Advanced API OAuth 1 token for an API v3 OAuth 2 token.","operationId":"convert_access_token","tags":["Authentication Extras\\Convert"],"requestBody":{"required":true,"content":{"application/vnd.vimeo.auth+json":{"schema":{"type":"object","properties":{"grant_type":{"description":"The grant type. The value of this field must be `vimeo_oauth1`.","enum":["vimeo_oauth1"],"type":"string"},"token":{"description":"The OAuth 1 token.","example":"58037c0078d5f54e15e638cc0dd882a570b13c50","type":"string"},"token_secret":{"description":"The OAuth 1 token secret.","example":"NTgwMzdjMDA3OGQ1ZjU0ZTE1ZTYzOGNjMGRkODgyYTU3MGIxM2M1MA==","type":"string"}},"required":["grant_type","token","token_secret"]}}}},"responses":{"200":{"description":"The token was converted.","content":{"application/vnd.vimeo.auth+json":{"schema":{"$ref":"#/components/schemas/auth"}}}},"400":{"description":"* The token is invalid.\n* The token has unauthorized scopes.","content":{"application/vnd.vimeo.auth+json":{"schema":{"$ref":"#/components/schemas/auth-error"}}}}}}},"/oauth/verify":{"get":{"summary":"Verify an OAuth 2 access token","description":"This method verifies that an OAuth 2 access token exists.","operationId":"verify_token","tags":["Authentication Extras\\Essentials"],"responses":{"200":{"description":"The token was verified.","content":{"application/vnd.vimeo.auth+json":{"schema":{"$ref":"#/components/schemas/auth"}}}},"401":{"description":"The token isn't a valid OAuth 2 token.","content":{"application/vnd.vimeo.auth+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/ondemand/genres":{"get":{"summary":"Get all On Demand genres","description":"This method returns every existing On Demand genre.","operationId":"get_vod_genres","tags":["On Demand\\Genres"],"responses":{"200":{"description":"The genres were returned.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/on-demand-genre"}}}}}}}},"/ondemand/genres/{genre_id}":{"get":{"summary":"Get a specific On Demand genre","description":"This method returns a single On Demand genre.","operationId":"get_vod_genre","tags":["On Demand\\Genres"],"parameters":[{"description":"The ID of the genre.","in":"path","name":"genre_id","required":true,"schema":{"type":"string","example":"animation"}}],"responses":{"200":{"description":"The genre was returned.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"$ref":"#/components/schemas/on-demand-genre"}}}},"404":{"description":"No such genre exists.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/ondemand/genres/{genre_id}/pages":{"get":{"summary":"Get all the On Demand pages in a genre","description":"This method returns every On Demand page that belongs to the specified genre.","operationId":"get_genre_vods","tags":["On Demand\\Genres"],"parameters":[{"description":"The ID of the genre.","in":"path","name":"genre_id","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["country","my_region"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","name","publish.time","videos"]}}],"responses":{"200":{"description":"The On Demand pages in the genre were returned.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/on-demand-page"}}}}}}}},"/ondemand/genres/{genre_id}/pages/{ondemand_id}":{"get":{"summary":"Get a specific On Demand page in a genre","description":"This method returns a single On Demand page that belongs to the specified genre.","operationId":"get_genre_vod","tags":["On Demand\\Genres"],"parameters":[{"description":"The ID of the genre.","in":"path","name":"genre_id","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"200":{"description":"The On Demand page in the genre was returned.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/on-demand-page"}}}},"404":{"description":"No such On Demand page or genre exists.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/ondemand/pages/{ondemand_id}":{"delete":{"summary":"Delete an On Demand page","description":"This method deletes the specified On Demand page.","operationId":"delete_vod_draft","tags":["On Demand\\Essentials"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"204":{"description":"The On Demand page was deleted."},"403":{"description":"The authenticated user can't delete this On Demand page.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page exists.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific On Demand page","description":"This method returns the specified On Demand page.","operationId":"get_vod","tags":["On Demand\\Essentials"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"200":{"description":"The On Demand page was returned.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/on-demand-page"}}}},"404":{"description":"No such On Demand page exists.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"patch":{"summary":"Edit an On Demand page","description":"This method edits the specified On Demand page. Use this method to enable preorders on the page or publish the page.","operationId":"edit_vod","tags":["On Demand\\Essentials"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"type":"object","properties":{"link":{"description":"The custom string to use in the Vimeo URL of the On Demand page.","example":"darbyforever","type":"string"},"preorder":{"properties":{"active":{"description":"Whether to enable preorders on the On Demand page.","example":true,"type":"boolean"},"publish_time":{"description":"The time that the On Demand page will be published. This parameter is required when **preorder.active** is `true`.","example":"2017-05-16T15:05:43+00:00","type":"string"}},"type":"object"},"publish":{"properties":{"active":{"description":"Whether to publish the On Demand page.","example":true,"type":"boolean"}},"type":"object"},"publish_when_ready":{"description":"Whether to publish the On Demand page automatically after all videos are finished transcoding.","example":true,"type":"boolean"}}}}}},"responses":{"200":{"description":"The On Demand page was edited.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/on-demand-page"}}}},"403":{"description":"The authenticated user can't edit the On Demand page.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page exists.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/ondemand/pages/{ondemand_id}/backgrounds":{"get":{"summary":"Get all the backgrounds on an On Demand page","description":"This method returns every background image on the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"get_vod_backgrounds","tags":["On Demand\\Backgrounds"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The background images were returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/picture"}}}}},"404":{"description":"No such On Demand page exists.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Add a background to an On Demand page","description":"This method adds a background image to the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"create_vod_background","tags":["On Demand\\Backgrounds"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"200":{"description":"The background image was added.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't add a background image to this On Demand page.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page exists.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["upload"]}]}},"/ondemand/pages/{ondemand_id}/backgrounds/{background_id}":{"delete":{"summary":"Delete a background on an On Demand page","description":"This method deletes the specified background image on an On Demand page. The authenticated user must be the owner of the page.","operationId":"delete_vod_background","tags":["On Demand\\Backgrounds"],"parameters":[{"description":"The ID of the background image.","in":"path","name":"background_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"204":{"description":"The background image was deleted."},"403":{"description":"The authenticated user can't delete this background image.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page or background image exists.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific background on an On Demand page","description":"This method returns a single background image on the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"get_vod_background","tags":["On Demand\\Backgrounds"],"parameters":[{"description":"The ID of the background image.","in":"path","name":"background_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"200":{"description":"The background image was returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't get this background image.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page or background image exists.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"patch":{"summary":"Edit a background on an On Demand page","description":"This method edits the specified background image on an On Demand page. The authenticated user must be the owner of the page.","operationId":"edit_vod_background","tags":["On Demand\\Backgrounds"],"parameters":[{"description":"The ID of the background image.","in":"path","name":"background_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"object","properties":{"active":{"description":"Whether this background image is the one that appears on the On Demand page.","example":true,"type":"boolean"}}}}}},"responses":{"200":{"description":"The background image was edited.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't edit this background image.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page or background image exists.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/ondemand/pages/{ondemand_id}/genres":{"get":{"summary":"Get all the genres of an On Demand page","description":"This method returns every genre associated with the specified On Demand page.","operationId":"get_vod_genres_by_ondemand_id","tags":["On Demand\\Genres"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"200":{"description":"The genres were returned.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/on-demand-genre"}}}}},"404":{"description":"No such On Demand page exists.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/ondemand/pages/{ondemand_id}/genres/{genre_id}":{"delete":{"summary":"Remove a genre from an On Demand page","description":"This method removes a genre association from the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"delete_vod_genre","tags":["On Demand\\Genres"],"parameters":[{"description":"The ID of the genre.","in":"path","name":"genre_id","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"204":{"description":"The genre was removed."},"400":{"description":"The On Demand page must belong to at least one genre.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user can't remove a genre from this On Demand page.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page or genre exists.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Check whether an On Demand page belongs to a specific genre","description":"This method determines whether an On Demand page is associated with the specified genre.","operationId":"get_vod_genre_by_ondemand_id","tags":["On Demand\\Genres"],"parameters":[{"description":"The ID of the genre.","in":"path","name":"genre_id","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"200":{"description":"The On Demand page is in this genre.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"$ref":"#/components/schemas/on-demand-genre"}}}},"404":{"description":"No such On Demand page or genre exists.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Add a genre to an On Demand page","description":"This method adds the specified genre designation to an On Demand page. A page can be associated with a maximum of two genres. The authenticated user must be the owner of the page.","operationId":"add_vod_genre","tags":["On Demand\\Genres"],"parameters":[{"description":"The ID of the genre.","in":"path","name":"genre_id","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"201":{"description":"The genre was added.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"$ref":"#/components/schemas/on-demand-genre"}}}},"400":{"description":"The On Demand page already has two genres.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user can't add a genre to this On Demand page.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page or genre exists.","content":{"application/vnd.vimeo.ondemand.genre+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/ondemand/pages/{ondemand_id}/likes":{"get":{"summary":"Get all the users who have liked a video on an On Demand page","description":"This method returns every user who has liked the specified video on an On Demand page.","operationId":"get_vod_likes","tags":["Likes\\Essentials"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `extra` - Consider extra content only.\n * `main` - Consider main content only.\n * `trailer` - Consider trailer content only.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["extra","main","trailer"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by join date.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The users were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}}}}},"/ondemand/pages/{ondemand_id}/pictures":{"get":{"summary":"Get all the posters on an On Demand page","description":"This method returns every poster on the specified On Demand page.","operationId":"get_vod_posters","tags":["On Demand\\Posters"],"parameters":[{"description":"The ID of the On Demand.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The posters were returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/picture"}}}}},"404":{"description":"No such On Demand page exists.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Add a poster to an On Demand page","description":"This method adds a poster image to the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"add_vod_poster","tags":["On Demand\\Posters"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"201":{"description":"The poster was added.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't add posters to this On Demand page.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["upload"]}]}},"/ondemand/pages/{ondemand_id}/pictures/{poster_id}":{"get":{"summary":"Get a specific poster on an On Demand page","description":"This method returns a single poster on the specified On Demand page.","operationId":"get_vod_poster","tags":["On Demand\\Posters"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The ID of the poster.","in":"path","name":"poster_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The poster was returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}}}},"patch":{"summary":"Edit a poster on an On Demand page","description":"This method edits a poster image on the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"edit_vod_poster","tags":["On Demand\\Posters"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The ID of the poster.","in":"path","name":"poster_id","required":true,"schema":{"type":"number","example":12345}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"object","properties":{"active":{"description":"Whether this poster is the one that appears on the On Demand page.","example":true,"type":"boolean"}}}}}},"responses":{"200":{"description":"The poster was edited.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}}},"security":[{"oauth2":["edit"]}]}},"/ondemand/pages/{ondemand_id}/promotions":{"get":{"summary":"Get all the promotions on an On Demand page","description":"This method returns every promotion on the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"get_vod_promotions","tags":["On Demand\\Promotions"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The filter to apply to the results.","in":"query","name":"filter","required":true,"schema":{"type":"string","enum":["batch","default","single","vip"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The promotions were returned.","content":{"application/vnd.vimeo.ondemand.promotion+json":{"schema":{"$ref":"#/components/schemas/on-demand-promotion"}}}},"400":{"description":"The filter is invalid.","content":{"application/vnd.vimeo.ondemand.promotion+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user can't get promotions on this On Demand page.","content":{"application/vnd.vimeo.ondemand.promotion+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page exists.","content":{"application/vnd.vimeo.ondemand.promotion+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["promo_codes"]}]},"post":{"summary":"Add a promotion to an On Demand page","description":"This method adds a promotion to the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"create_vod_promotion","tags":["On Demand\\Promotions"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.ondemand.promotion+json":{"schema":{"type":"object","properties":{"access_type":{"description":"The promotion access type, which is a purchase option that isn't available in the On Demand container. Use the **download** and **stream_period** fields to define additional characteristics for the `vip` type.\n\nOption descriptions:\n * `default` - The promotion grants a discount on the existing purchase options for an On Demand container.\n * `vip` - The promotion grants free access to On Demand content before it's released.\n","enum":["default","vip"],"type":"string"},"code":{"description":"The promotion code. This field is ignored for batch promotions.","example":"sxsw2018","type":"string"},"discount_type":{"description":"The type of discount offered by the promo code. When `access_type` is `vip`, the value of this field must be `free`.\n\nOption descriptions:\n * `free` - This option reduces the price to zero.\n * `percent` - This option reduces the price by the percentage defined in the **percent_off** field.\n","enum":["free","percent"],"type":"string"},"download":{"description":"Whether the promotion grants download access to On Demand content. This is necessary only when not previously defined in the On Demand container or when **access_type** is `vip` or **product_type** is `buy`.","example":true,"type":"boolean"},"end_time":{"description":"The end of the promotion period. If this field has no value, the promotion never expires.","example":"1526089920","type":"string"},"label":{"description":"For batch promotions, the description of the promotion. This field is ignored for single promotions.","example":"sxsw","type":"string"},"percent_off":{"description":"The percentage of the discount. This field is applicable only when **discount_type** is `percent`.","example":50,"type":"number"},"product_type":{"description":"The type of transaction to which the promotion applies. When **access_type** is `default`, the default value is `any`. When **access_type** is `vip`, the default value is `rent`. Also, when **access_type** is `vip`, the only valid product types are `buy` and `rent`.","enum":["any","buy","buy_episode","rent","rent_episode","subscribe"],"type":"string"},"start_time":{"description":"The start of the promotion period. If this field has no value, the start time defaults to the time that the promotion was created.","example":"1526089920","type":"string"},"stream_period":{"description":"The amount of time that a user has access to On Demand content upon redeeming a promo code. This field is necessary only when not defined in the On Demand container or when creating promotions where **access_type** is `vip` or **product_type** is `rent`.","enum":["1_week","1_year","24_hour","30_day","3_month","48_hour","6_month","72_hour"],"type":"string"},"total":{"description":"When **type** is `batch`, the number of promotions to generate. When **type** is `single`, the number of uses of the promotion.","example":9,"type":"number"},"type":{"description":"The type of the promotion. When **access_type** is `vip`, the value for this field must be `batch`.\n\nOption descriptions:\n * `batch` - This option generates many random promo codes with one use each.\n * `single` - This option generates one promo code that can be used many times.\n","enum":["batch","single"],"type":"string"}},"required":["download","stream_period","total","type"]}}}},"responses":{"200":{"description":"The promotion was added.","content":{"application/vnd.vimeo.ondemand.promotion+json":{"schema":{"$ref":"#/components/schemas/on-demand-promotion"}}}},"400":{"description":"There are errors in the request, or the promo code already exists.","content":{"application/vnd.vimeo.ondemand.promotion+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user can't add promotions to this On Demand page.","content":{"application/vnd.vimeo.ondemand.promotion+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page exists.","content":{"application/vnd.vimeo.ondemand.promotion+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["promo_codes","create"]}]}},"/ondemand/pages/{ondemand_id}/promotions/{promotion_id}":{"delete":{"summary":"Delete a promotion on an On Demand page","description":"This method deletes a promotion on the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"delete_vod_promotion","tags":["On Demand\\Promotions"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The ID of the promotion.","in":"path","name":"promotion_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"204":{"description":"The promotion was deleted."},"403":{"description":"The authenticated user can't delete promotions on this On Demand page.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page or promotion exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["promo_codes","delete"]}]},"get":{"summary":"Get a specific promotion on an On Demand page","description":"This method returns a single promotion on the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"get_vod_promotion","tags":["On Demand\\Promotions"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The ID of the promotion.","in":"path","name":"promotion_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The promotion was returned.","content":{"application/vnd.vimeo.ondemand.promotion+json":{"schema":{"$ref":"#/components/schemas/on-demand-promotion"}}}},"403":{"description":"The authenticated user can't get promotions on this On Demand page.","content":{"application/vnd.vimeo.ondemand.promotion+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page or promotion exists.","content":{"application/vnd.vimeo.ondemand.promotion+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["promo_codes"]}]}},"/ondemand/pages/{ondemand_id}/promotions/{promotion_id}/codes":{"get":{"summary":"Get all the codes of a promotion on an On Demand page","description":"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":"get_vod_promotion_codes","tags":["On Demand\\Promotions"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The ID of the promotion.","in":"path","name":"promotion_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The codes were returned.","content":{"application/vnd.vimeo.ondemand.promocode+json":{"schema":{"$ref":"#/components/schemas/on-demand-promotion-code"}}}},"403":{"description":"The authenticated user can't get promotions on this On Demand page.","content":{"application/vnd.vimeo.ondemand.promocode+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page or promotion exists.","content":{"application/vnd.vimeo.ondemand.promocode+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["promo_codes"]}]}},"/ondemand/pages/{ondemand_id}/regions":{"delete":{"summary":"Remove a list of regions from an On Demand page","description":"This method removes multiple regions from the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"delete_vod_regions","tags":["On Demand\\Regions"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"type":"object","properties":{"countries":{"description":"An array of country codes for the regions to remove.","items":{"type":"string"},"type":"array"}}}}}},"responses":{"200":{"description":"The regions were removed.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/on-demand-region"}}}}},"403":{"description":"The authenticated user can't remove regions from this On Demand page.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page or region exists.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get all the regions on an On Demand page","description":"This method returns every region on the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"get_vod_regions","tags":["On Demand\\Regions"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"200":{"description":"The regions were returned.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/on-demand-region"}}}}},"404":{"description":"No such On Demand page exists.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Add a list of regions to an On Demand page","description":"This method adds multiple regions to the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"set_vod_regions","tags":["On Demand\\Regions"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"type":"object","properties":{"countries":{"description":"An array of country codes for the regions to add.","items":{"type":"string"},"type":"array"}},"required":["countries"]}}}},"responses":{"200":{"description":"The list of regions was added.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/on-demand-region"}}}},"403":{"description":"The authenticated user can't add regions to this On Demand page.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page or region exists.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/ondemand/pages/{ondemand_id}/regions/{country}":{"delete":{"summary":"Remove a specific region from an On Demand page","description":"This method removes a single region from the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"delete_vod_region","tags":["On Demand\\Regions"],"parameters":[{"description":"The country code of the region to remove.","in":"path","name":"country","required":true,"schema":{"type":"string","example":"US"}},{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"204":{"description":"The region was removed."},"403":{"description":"The authenticated user can't remove regions from this On Demand page.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page or region exists.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific region on an On Demand page","description":"This method returns a single region on the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"get_vod_region","tags":["On Demand\\Regions"],"parameters":[{"description":"The country code of the region to return.","in":"path","name":"country","required":true,"schema":{"type":"string","example":"US"}},{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"200":{"description":"The region was returned.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/on-demand-region"}}}},"404":{"description":"No such On Demand page or region exists.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Add a specific region to an On Demand page","description":"This method adds a single region to the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"add_vod_region","tags":["On Demand\\Regions"],"parameters":[{"description":"The country code of the region to add.","in":"path","name":"country","required":true,"schema":{"type":"string","example":"US"}},{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}}],"responses":{"201":{"description":"The region was added.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/on-demand-region"}}}},"403":{"description":"The authenticated user can't add regions to this On Demand page.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such On Demand page or region exists.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/ondemand/pages/{ondemand_id}/seasons":{"get":{"summary":"Get all the seasons on an On Demand page","description":"This method returns every season on the specified On Demand page.","operationId":"get_vod_seasons","tags":["On Demand\\Seasons"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["viewable"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["date","manual"]}}],"responses":{"200":{"description":"The seasons were returned.","content":{"application/vnd.vimeo.ondemand.season+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/on-demand-season"}}}}},"404":{"description":"No such On Demand page exists.","content":{"application/vnd.vimeo.ondemand.season+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/ondemand/pages/{ondemand_id}/seasons/{season_id}":{"get":{"summary":"Get a specific season on an On Demand page","description":"This method returns a single season on the specified On Demand page.","operationId":"get_vod_season","tags":["On Demand\\Seasons"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The ID of the season.","in":"path","name":"season_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The season was returned.","content":{"application/vnd.vimeo.ondemand.season+json":{"schema":{"$ref":"#/components/schemas/on-demand-season"}}}},"404":{"description":"No such On Demand page or season exists.","content":{"application/vnd.vimeo.ondemand.season+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/ondemand/pages/{ondemand_id}/seasons/{season_id}/videos":{"get":{"summary":"Get all the videos in a season on an On Demand page","description":"This method returns every video in the specified season on an On Demand page.","operationId":"get_vod_season_videos","tags":["On Demand\\Seasons"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The ID of the season.","in":"path","name":"season_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The attribute by which to filter the results.","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["viewable"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["date","default","manual","name","purchase_time","release_date"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}}}}},"/ondemand/pages/{ondemand_id}/videos":{"get":{"summary":"Get all the videos on an On Demand page","description":"This method returns every video on the specified On Demand page.","operationId":"get_vod_videos","tags":["On Demand\\Videos"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["all","buy","expiring_soon","extra","main","main.viewable","rent","trailer","unwatched","viewable","watched"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["date","default","episode","manual","name","purchase_time","release_date"]}}],"responses":{"200":{"description":"* The videos were returned.\n* The videos were returned.","content":{"application/vnd.vimeo.ondemand.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}}}}},"/ondemand/pages/{ondemand_id}/videos/{video_id}":{"delete":{"summary":"Remove a video from an On Demand page","description":"This method removes a video from the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"delete_video_from_vod","tags":["On Demand\\Videos"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"204":{"description":"The video was removed."},"403":{"description":"The authenticated user can't remove videos from this On Demand page.","content":{"application/vnd.vimeo.ondemand.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific video on an On Demand page","description":"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":"get_vod_video","tags":["On Demand\\Videos"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The video was returned.","content":{"application/vnd.vimeo.ondemand.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}}}},"put":{"summary":"Add a video to an On Demand page","description":"This method adds a video to the specified On Demand page. The authenticated user must be the owner of the page.","operationId":"add_video_to_vod","tags":["On Demand\\Videos"],"parameters":[{"description":"The ID of the On Demand page.","in":"path","name":"ondemand_id","required":true,"schema":{"type":"number","example":61326}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":12345}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.ondemand.video+json":{"schema":{"type":"object","properties":{"buy":{"properties":{"price":{"properties":{"AUD":{"description":"The purchase price of the video in Australian dollars.","example":1.99,"type":"number"},"CAD":{"description":"The purchase price of the video in Canadian dollars.","example":1.99,"type":"number"},"CHF":{"description":"The purchase price of the video in Swiss francs.","example":1.99,"type":"number"},"DKK":{"description":"The purchase price of the video in Danish krone.","example":1.99,"type":"number"},"EUR":{"description":"The purchase price of the video in euros.","example":1.99,"type":"number"},"GBP":{"description":"The purchase price of the video in British pounds.","example":1.99,"type":"number"},"JPY":{"description":"The purchase price of the video in Japanese yen.","example":1.99,"type":"number"},"KRW":{"description":"The purchase price of the video in South Korean won.","example":1.99,"type":"number"},"NOK":{"description":"The purchase price of the video in Norwegian krone.","example":1.99,"type":"number"},"PLN":{"description":"The purchase price of the video in Polish zloty.","example":1.99,"type":"number"},"SEK":{"description":"The purchase price of the video in Swedish krona.","example":1.99,"type":"number"},"USD":{"description":"The purchase price of the video in United States dollars. This field is required when **buy.active** is `true`.","example":1.99,"type":"number"}},"type":"object"}},"type":"object"},"position":{"description":"The position of the video in the On Demand collection.","example":10,"type":"number"},"release_year":{"description":"The release year of the video.","example":2018,"type":"number"},"rent":{"properties":{"price":{"properties":{"AUD":{"description":"The rental price of the video in Australian dollars.","example":0.99,"type":"number"},"CAD":{"description":"The rental price of the video in Canadian dollars.","example":0.99,"type":"number"},"CHF":{"description":"The rental price of the video in Swiss francs.","example":0.99,"type":"number"},"DKK":{"description":"The rental price of the video in Danish krone.","example":0.99,"type":"number"},"EUR":{"description":"The rental price of the video in euros.","example":0.99,"type":"number"},"GBP":{"description":"The rental price of the video in British pounds.","example":0.99,"type":"number"},"JPY":{"description":"The rental price of the video in Japanese yen.","example":0.99,"type":"number"},"KRW":{"description":"The rental price of the video in South Korean won.","example":0.99,"type":"number"},"NOK":{"description":"The rental price of the video in Norwegian krone.","example":0.99,"type":"number"},"PLN":{"description":"The rental price of the video in Polish zloty.","example":0.99,"type":"number"},"SEK":{"description":"The rental price of the video in Swedish krona.","example":0.99,"type":"number"},"USD":{"description":"The rental price of the video in United States dollars. This field is required when **rent.active** is `true`.","example":0.99,"type":"number"}},"type":"object"}},"type":"object"},"type":{"description":"The type of the video.","enum":["extra","main","trailer"],"type":"string"}},"required":["type"]}}}},"responses":{"200":{"description":"The video was added.","content":{"application/vnd.vimeo.ondemand.video+json":{"schema":{"$ref":"#/components/schemas/on-demand-video"}}}},"400":{"description":"The video can't be added to this On Demand page.","content":{"application/vnd.vimeo.ondemand.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user can't add videos to this On Demand page.","content":{"application/vnd.vimeo.ondemand.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/ondemand/regions":{"get":{"summary":"Get all the On Demand regions","description":"This method returns every existing On Demand region.","operationId":"get_regions","tags":["On Demand\\Regions"],"responses":{"200":{"description":"The regions were returned.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/on-demand-region"}}}}}}}},"/ondemand/regions/{country}":{"get":{"summary":"Get a specific On Demand region","description":"This method returns a single On Demand region.","operationId":"get_region","tags":["On Demand\\Regions"],"parameters":[{"description":"The country code of the region to return.","in":"path","name":"country","required":true,"schema":{"type":"string","example":"US"}}],"responses":{"200":{"description":"The region was returned.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/on-demand-region"}}}},"404":{"description":"No such region exists.","content":{"application/vnd.vimeo.ondemand.region+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/tags/{word}":{"get":{"summary":"Get a tag","description":"This method returns the specified tag.","operationId":"get_tag","tags":["Tags\\Essentials"],"parameters":[{"description":"The tag to return.","in":"path","name":"word","required":true,"schema":{"type":"string","example":"awesome"}}],"responses":{"200":{"description":"The tag was returned.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/tag"}}}}}}},"/tags/{word}/videos":{"get":{"summary":"Get all the videos with a specific tag","description":"This method returns all the videos associated with the specified tag.","operationId":"get_videos_with_tag","tags":["Videos\\Tags"],"parameters":[{"description":"The tag word.","in":"path","name":"word","required":true,"schema":{"type":"string","example":"awesome"}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `created_time` - Sort the results by creation time.\n * `duration` - Sort the results by duration.\n * `name` - Sort the results by name.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["created_time","duration","name"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"404":{"description":"No such tag exists.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/teammembers/{code}":{"get":{"summary":"Get membership information about a team","description":"This method returns information about the membership of the specified team. Usage is currently limited to the team join forms.","operationId":"get_team_information","tags":["Teams\\Members"],"parameters":[{"description":"The code corresponding to the desired team. This value appears under `TeamUser` > `code`.","in":"path","name":"code","required":true,"schema":{"type":"string","example":"q3u4mrqoc3u4hcnqo34"}}],"responses":[]}},"/tokens":{"delete":{"summary":"Revoke the current access token","description":"This method revokes the access token that the requesting app is currently using. The token must be of the OAuth 2 type.","operationId":"delete_token","tags":["Authentication Extras\\Essentials"],"responses":{"204":{"description":"The token was revoked."},"400":{"description":"Access can't be revoked for an OAuth 1 token.","content":{"application/vnd.vimeo.auth+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/tutorial":{"get":{"summary":"Get started with the Vimeo API","description":"This method tests whether users who are working through the [Getting Started](https://developer.vimeo.com/api/guides/start) guides have set up their configurations correctly.","operationId":"developer_tutorial","tags":["Tutorial\\Essentials"],"responses":[]}},"/users":{"get":{"summary":"Search for users","description":"This method returns user search results.","operationId":"search_users","tags":["Users\\Search"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by creation date.\n * `followers` - Sort the results by number of followers.\n * `relevant` - Sort the results by relevance.\n * `videos` - Sort the results by number of videos.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","followers","relevant","videos"]}}],"responses":{"200":{"description":"The search results were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}},"500":{"description":"There was an internal search error.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"503":{"description":"Search is disabled.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/users/{user_id}":{"get":{"summary":"Get the user","description":"This method returns the authenticated user.","operationId":"get_user","tags":["Users\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The user was returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/user"}}}}}},"patch":{"summary":"Edit the user","description":"This method edits the Vimeo account of the authenticated user.","operationId":"edit_user","tags":["Users\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.user+json":{"schema":{"type":"object","properties":{"bio":{"description":"The user's bio.","example":"This is where you will find videos and news updates from the staff","type":"string"},"content_filter":{"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.","items":{"type":"string"},"type":"array"},"gender":{"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","enum":["f","m","n","o"],"type":"string"},"link":{"description":"The user's custom Vimeo URL.","example":"staff","type":"string"},"location":{"description":"The user's location.","example":"New York City","type":"string"},"name":{"description":"The user's display name.","example":"Vimeo Staff","type":"string"},"password":{"description":"The default password for all future videos that this user uploads. To use this field, the **videos.privacy.view** field must be `password`.","example":"hunter1","type":"string"},"videos":{"properties":{"privacy":{"properties":{"add":{"description":"Whether the user can add videos to showcases, channels, or groups by default.","example":true,"type":"boolean"},"comments":{"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","enum":["anybody","contacts","nobody"],"type":"string"},"download":{"description":"Whether the user can download videos. This value becomes the default download setting for all future videos that the user uploads.","example":true,"type":"boolean"},"embed":{"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","enum":["private","public","whitelist"],"type":"string"},"view":{"description":"Who can access the user's videos by default.\n\nOption descriptions:\n * `anybody` - Anyone can access the videos.\n * `contacts` - Only the user's contacts can access the videos.\n * `disable` - The videos are disabled.\n * `nobody` - No one can access the videos.\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.\n","enum":["anybody","contacts","disable","nobody","password","unlisted","users"],"type":"string"}},"type":"object"}},"type":"object"}}}}}},"responses":{"200":{"description":"The user's Vimeo account was edited.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/user"}}}},"400":{"description":"Error code 2204: A parameter is invalid.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/error"}}}}}}},"/users/{user_id}/albums":{"get":{"summary":"Get all the showcases that belong to the user","description":"This method returns every showcase belonging to the authenticated user.","operationId":"get_showcases","tags":["Showcases\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date of creation.\n * `duration` - Sort the results by duration.\n * `videos` - Sort the results by the number of videos.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","duration","videos"]}}],"responses":{"200":{"description":"The showcases were returned.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/album"}}}}},"400":{"description":"A parameter is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Create a showcase","description":"This method creates a new showcase for the specified user.","operationId":"create_showcase","tags":["Showcases\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.album+json":{"schema":{"type":"object","properties":{"brand_color":{"description":"The hexadecimal code for the color of the player buttons and showcase controls.","example":"ff66ee","type":"string"},"description":{"description":"The description of the showcase.","example":"Vimeo holiday videos!","type":"string"},"hide_nav":{"description":"Whether to hide Vimeo navigation when displaying the showcase.","example":true,"type":"boolean"},"hide_upcoming":{"description":"Whether to include the upcoming live event in the showcase.","example":false,"type":"boolean"},"layout":{"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","enum":["grid","player"],"type":"string"},"name":{"description":"The name of the showcase.","example":"Vimeo Holiday Videos!","type":"string"},"password":{"description":"The showcase's password. This field is required only when **privacy** is `password`.","example":"hunter1","type":"string"},"privacy":{"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","enum":["anybody","embed_only","nobody","password","team"],"type":"string"},"review_mode":{"description":"Whether showcase videos use the review mode URL.","example":true,"type":"boolean"},"sort":{"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","enum":["added_first","added_last","alphabetical","arranged","comments","likes","newest","oldest","plays"],"type":"string"},"theme":{"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","enum":["dark","standard"],"type":"string"}},"required":["name"]}}}},"responses":{"201":{"description":"The showcase was created.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/album"}}}},"400":{"description":"A parameter is invalid.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The supplied token doesn't have the proper scopes, or the authenticated user can't create showcases.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["create"]}]}},"/users/{user_id}/albums/{album_id}":{"delete":{"summary":"Delete a showcase","description":"This method deletes the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"delete_showcase","tags":["Showcases\\Essentials"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The showcase was deleted."},"403":{"description":"The supplied token doesn't have the proper scopes, or the authenticated user can't delete the showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific showcase","description":"This method returns the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"get_showcase","tags":["Showcases\\Essentials"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The showcase was returned.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/album"}}}},"404":{"description":"No such showcase exists.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"patch":{"summary":"Edit a showcase","description":"This method edits the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"edit_showcase","tags":["Showcases\\Essentials"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.album+json":{"schema":{"type":"object","properties":{"brand_color":{"description":"The hexadecimal code for the color of the player buttons and showcase controls.","example":"ff66ee","type":"string"},"description":{"description":"The description of the showcase.","example":"Vimeo holiday videos!","type":"string"},"domain":{"description":"The custom domain of the showcase.","example":"mycustomdomain.com","nullable":true,"type":"string"},"hide_nav":{"description":"Whether to hide Vimeo navigation when displaying the showcase.","example":true,"type":"boolean"},"hide_upcoming":{"description":"Whether to include the upcoming live event in the showcase.","example":false,"type":"boolean"},"layout":{"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","enum":["grid","player"],"type":"string"},"name":{"description":"The name of the showcase.","example":"Vimeo Holiday Videos!","type":"string"},"password":{"description":"The showcase's password. This field is required only when **privacy** is `password`.","example":"hunter1","type":"string"},"privacy":{"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","enum":["anybody","embed_only","nobody","password","team"],"type":"string"},"review_mode":{"description":"Whether showcase videos use the review mode URL.","example":true,"type":"boolean"},"sort":{"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","enum":["added_first","added_last","alphabetical","arranged","comments","likes","newest","oldest","plays"],"type":"string"},"theme":{"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","enum":["dark","standard"],"type":"string"},"url":{"description":"The custom Vimeo URL of the showcase.","example":"my-custom-url","nullable":true,"type":"string"},"use_custom_domain":{"description":"Whether the user has opted for a custom domain for their showcase.","example":true,"type":"boolean"}}}}}},"responses":{"200":{"description":"The showcase was edited.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/album"}}}},"400":{"description":"A parameter is invalid.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user doesn't own the showcase, the supplied token doesn't have the proper scopes, or the authenticated user can't edit the showcase.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/users/{user_id}/albums/{album_id}/custom_thumbnails":{"get":{"summary":"Get all the custom thumbnails of a showcase","description":"This method returns every custom thumbnail of the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"get_showcase_custom_thumbs","tags":["Showcases\\Custom showcase thumbnails"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The custom thumbnails were returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/picture"}}}}},"403":{"description":"Error code 3200: The authenticated user can't view the custon thumbnails from this showcase.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"No such showcase exists.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Add a custom thumbnail to a showcase","description":"This method adds an uploaded image file as a custom thumbnail for the specified showcase. The image doesn't need to be a still from a showcase video, unlike with the [standard thumbnail method](https://developer.vimeo.com/api/reference/albums#set_video_as_album_thumbnail). The authenticated user must be the owner of the showcase.\n\nFor information on how to upload the thumbnail, see our [Working with Thumbnail Uploads](https://developer.vimeo.com/api/upload/thumbnails) guide, and follow the same steps.","operationId":"create_showcase_custom_thumb","tags":["Showcases\\Custom showcase thumbnails"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"201":{"description":"The custom thumbnail was added to the showcase.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't add custom thumbnails to this showcase.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["upload"]}]}},"/users/{user_id}/albums/{album_id}/custom_thumbnails/{thumbnail_id}":{"delete":{"summary":"Delete a custom showcase thumbnail","description":"This method deletes the specified custom thumbnail from its showcase. The authenticated user must be the owner of the showcase.","operationId":"delete_showcase_custom_thumbnail","tags":["Showcases\\Custom showcase thumbnails"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the custom thumbnail.","in":"path","name":"thumbnail_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The custom thumbnail was deleted."},"403":{"description":"The authenticated user can't delete this custom thumbnail.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists, or it doesn't contain the specified custom thumbnail.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific custom showcase thumbnail","description":"This method returns a single custom thumbnail of the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"get_showcase_custom_thumbnail","tags":["Showcases\\Custom showcase thumbnails"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the custom thumbnail.","in":"path","name":"thumbnail_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The custom thumbnail was returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't view this custom thumbnail.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists, or it doesn't contain the specified custom thumbnail.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"patch":{"summary":"Replace a custom showcase thumbnail","description":"This method replaces the specified custom showcase thumbnail with a new image file. The authenticated user must be the owner of the showcase.\n\nFor information on how to upload the thumbnail, see our [Working with Thumbnail Uploads](https://developer.vimeo.com/api/upload/thumbnails) guide.","operationId":"replace_showcase_custom_thumb","tags":["Showcases\\Custom showcase thumbnails"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the custom thumbnail.","in":"path","name":"thumbnail_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"object","properties":{"active":{"description":"Whether to make this image the active custom showcase thumbnail.","example":true,"type":"boolean"}}}}}},"responses":{"200":{"description":"The custom thumbnail was replaced.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't replace this custom thumbnail.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists, or it doesn't contain the specified custom thumbnail.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/users/{user_id}/albums/{album_id}/logos":{"get":{"summary":"Get all the custom logos of a showcase","description":"This method returns every custom logo of the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"get_showcase_logos","tags":["Showcases\\Custom showcase logos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The custom logos were returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/picture"}}}}},"404":{"description":"No such showcase exists.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Add a custom logo to a showcase","description":"This method adds an image file as a custom logo to the specified showcase. The authenticated user must be the owner of the showcase.\n\nFor information on how to upload the logo, see our [Working with Thumbnail Uploads](https://developer.vimeo.com/api/upload/thumbnails) guide.","operationId":"create_showcase_logo","tags":["Showcases\\Custom showcase logos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"201":{"description":"The logo was added to the showcase.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't add custom logos to this showcase.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["upload"]}]}},"/users/{user_id}/albums/{album_id}/logos/{logo_id}":{"delete":{"summary":"Delete a custom showcase logo","description":"This method deletes the specified custom logo from its showcase. The authenticated user must be the owner of the showcase.","operationId":"delete_showcase_logo","tags":["Showcases\\Custom showcase logos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the custom logo.","in":"path","name":"logo_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The custom logo was deleted."},"403":{"description":"The authenticated user can't delete this custom logo.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists, or it doesn't contain the specified custom logo.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific custom showcase logo","description":"This method returns a single custom logo of the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"get_showcase_logo","tags":["Showcases\\Custom showcase logos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the custom logo.","in":"path","name":"logo_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The custom logo was returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't access this custom logo.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists, or it doesn't contain the specified custom logo.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"patch":{"summary":"Replace a custom showcase logo","description":"This method replaces the specified custom showcase logo with a new image file. The authenticated user must be the owner of the showcase.\n\nFor information on how to upload the logo, see our [Working with Thumbnail Uploads](https://developer.vimeo.com/api/upload/thumbnails) guide.","operationId":"replace_showcase_logo","tags":["Showcases\\Custom showcase logos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the custom logo.","in":"path","name":"logo_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"object","properties":{"active":{"description":"Whether to make this image the active showcase logo.","example":true,"type":"boolean"}}}}}},"responses":{"200":{"description":"The custom logo was replaced.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't replace this custom logo.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists, or it doesn't contain the specified custom logo.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/users/{user_id}/albums/{album_id}/videos":{"get":{"summary":"Get all the videos in a showcase","description":"This method returns every video in the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"get_showcase_videos","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The page containing the video URI.","in":"query","name":"containing_uri","required":false,"schema":{"type":"string","example":"/videos/258684937"}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `embeddable` - Filter the results by the **embeddable** attribute.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The password of the showcase.","in":"query","name":"password","required":false,"schema":{"type":"string","example":"hunter1"}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by date.\n * `default` - Sort the results by the default method.\n * `duration` - Sort the results by duration.\n * `likes` - Sort the results by number of likes.\n * `manual` - Sort the results by their manual order.\n * `modified_time` - Sort the results by last modification.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","default","duration","likes","manual","modified_time","plays"]}},{"description":"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.","in":"query","name":"weak_search","required":false,"schema":{"type":"boolean","example":false}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"404":{"description":"No such showcase exists.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Replace all the videos in a showcase","description":"This method replaces all the videos in the specified showcase with a new set of one or more videos. The authenticated user must be the owner of the showcase.","operationId":"replace_videos_in_showcase","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"videos":{"description":"A comma-separated list of video URIs corresponding to the videos to add.","example":"/videos/258684937,/videos/273576296","type":"string"}},"required":["videos"]}}}},"responses":{"201":{"description":"The videos were added."},"403":{"description":"The authenticated user can't add videos to the showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/users/{user_id}/albums/{album_id}/videos/{video_id}":{"delete":{"summary":"Remove a video from a showcase","description":"This method removes the specified video from its showcase. The authenticated user must be the owner of the showcase.","operationId":"remove_video_from_showcase","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":196367152}}],"responses":{"204":{"description":"The video was removed."},"403":{"description":"The supplied token doesn't have the proper scopes, or the authenticated user can't remove videos from the showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific video in a showcase","description":"This method returns a single video belonging to the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"get_showcase_video","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":3706071}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":196367152}},{"description":"The password of the showcase.","in":"query","name":"password","required":false,"schema":{"type":"string","example":"hunter1"}}],"responses":{"200":{"description":"The video was returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"404":{"description":"No such showcase exists, or the video doesn't belong to it.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Add a specific video to a showcase","description":"This method adds a single video to the specified showcase. The authenticated user must be the owner of the showcase.","operationId":"add_video_to_showcase","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":196367152}}],"responses":{"204":{"description":"The video was added."},"403":{"description":"The supplied token doesn't have the proper scopes, or the authenticated user can't add videos to the showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such showcase exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/users/{user_id}/albums/{album_id}/videos/{video_id}/set_album_thumbnail":{"post":{"summary":"Create a thumbnail for a showcase from a showcase video","description":"This method creates a thumbnail image for a showcase from the specified frame of a showcase video. The authenticated user must be the owner of the showcase.","operationId":"set_video_as_showcase_thumbnail","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":196367152}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"time_code":{"description":"The time in seconds of the video frame to use as the thumbnail image.","example":300,"type":"number"}}}}}},"responses":{"200":{"description":"The showcase thumbnail was created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/album"}}}},"403":{"description":"Error code 3429: The authenticated user can't create a thumbnail for this showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such showcase, user, or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"500":{"description":"Error code 4016: An unexpected error occurred.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]}},"/users/{user_id}/albums/{album_id}/videos/{video_id}/set_featured_video":{"patch":{"summary":"Set the featured video of a showcase","description":"This method sets the featured video of the specified showcase. The authenticated user must be the owner of the showcase, and the featured video must belong to it.","operationId":"set_video_as_showcase_featured","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the showcase.","in":"path","name":"album_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":196367152}}],"responses":{"200":{"description":"The video is now the featured video of the showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/album"}}}},"403":{"description":"Error code 3429: The authenticated user can't set the featured video of this showcase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such showcase, user, or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]}},"/users/{user_id}/appearances":{"get":{"summary":"Get all the videos in which the user appears","description":"This method returns all the videos in which the authenticated user has a credited appearance.","operationId":"get_appearances","tags":["Videos\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `embeddable` - Return embeddable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by date.\n * `duration` - Sort the results by duration.\n * `likes` - Sort the results by number of likes.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","duration","likes","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}}}}},"/users/{user_id}/categories":{"get":{"summary":"Get all the categories that the user follows","description":"This method returns every category that the authenticated user follows.","operationId":"get_category_subscriptions","tags":["Categories\\Users"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date.\n * `name` - Sort the results by name.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","name"]}}],"responses":{"200":{"description":"The categories were returned.","content":{"application/vnd.vimeo.category+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/category"}}}}},"403":{"description":"Error code 3200: Only the authenticated user can access this information.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]}},"/users/{user_id}/categories/{category}":{"delete":{"summary":"Cause the user to stop following a category","description":"This method causes the authenticated user to stop following the specified category.","operationId":"unsubscribe_from_category","tags":["Categories\\Users"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The user has stopped following the category."}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Check if the user follows a category","description":"This method determines whether the authenticated user follows the specified category.","operationId":"check_if_user_subscribed_to_category","tags":["Categories\\Users"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"string","example":"animation"}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The user is following the category."}},"security":[{"oauth2":["private"]}]},"put":{"summary":"Cause the user to follow a specific category","description":"This method causes the authenticated user to follow the specified category.","operationId":"subscribe_to_category","tags":["Categories\\Users"],"parameters":[{"description":"The name of the category.","in":"path","name":"category","required":true,"schema":{"type":"number","example":0}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The user is following the category."}},"security":[{"oauth2":["interact"]}]}},"/users/{user_id}/channels":{"get":{"summary":"Get all the channels to which a user subscribes","description":"This method returns all the channels to which the specified user subscribes.","operationId":"get_channel_subscriptions","tags":["Channels\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `moderated` - Return moderated channels.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["moderated"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by creation date.\n * `followers` - Sort the results by number of followers.\n * `videos` - Sort the results by number of videos.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","followers","videos"]}}],"responses":{"200":{"description":"The channels were returned.","content":{"application/vnd.vimeo.channel+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/channel"}}}}},"304":{"description":"No channel has been followed since the given `If-Modified-Since` header."}}}},"/users/{user_id}/channels/{channel_id}":{"delete":{"summary":"Unsubscribe the user from a specific channel","description":"This method unsubscribes the authenticated user from the specified channel.","operationId":"unsubscribe_from_channel","tags":["Channels\\Subscriptions and subscribers"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The user is unsubscribed from the channel."},"404":{"description":"No such channel exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Check if a user follows a channel","description":"This method determines whether the specified user is a follower of a particular channel.","operationId":"check_if_user_subscribed_to_channel","tags":["Channels\\Subscriptions and subscribers"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The user follows the channel."},"404":{"description":"No such channel exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Subscribe the user to a specific channel","description":"This method subscribes the authenticated user to the specified channel.","operationId":"subscribe_to_channel","tags":["Channels\\Subscriptions and subscribers"],"parameters":[{"description":"The ID of the channel.","in":"path","name":"channel_id","required":true,"schema":{"type":"number","example":927}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The user is subscribed to the channel."},"404":{"description":"No such channel exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]}},"/users/{user_id}/customlogos":{"get":{"summary":"Get all the custom logos that belong to the user","description":"This method returns every custom logo that belongs to the authenticated user or team owner.","operationId":"get_custom_logos","tags":["Embed Presets\\Custom logos"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The custom logos were returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/picture"}}}}},"403":{"description":"The authenticated user can't access the custom logos.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Add a custom logo for the user","description":"This method adds a custom logo representing the authenticated user for display in the embedded player.","operationId":"create_custom_logo","tags":["Embed Presets\\Custom logos"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"201":{"description":"The custom logo was added.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't add the custom logo.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["upload"]}]}},"/users/{user_id}/customlogos/{logo_id}":{"delete":{"summary":"delete a specific custom logo for the user","description":"This method deletes a single custom logo belonging to the authenticated user.","operationId":"delete_custom_logo","tags":["Embed Presets\\Custom logos"],"parameters":[{"description":"The ID of the custom logo.","in":"path","name":"logo_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The custom logo was deleted."},"403":{"description":"The authenticated user can't access the custom logo.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific custom logo for the user","description":"This method returns a single custom logo belonging to the authenticated user.","operationId":"get_custom_logo","tags":["Embed Presets\\Custom logos"],"parameters":[{"description":"The ID of the custom logo.","in":"path","name":"logo_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The custom logo was returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't access the custom logo.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/users/{user_id}/destinations":{"get":{"summary":"Get available destinations for user to stream to","description":"This method returns available destinations for user to stream to.","operationId":"get_available_destinations","tags":["Live\\Event destinations"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"Available destination were returned"},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3422: The authenticated user can't live simulcast.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]}},"/users/{user_id}/feed":{"get":{"summary":"Get all the videos in the user's feed","description":"This method returns every video in the authenticated user's feed.","operationId":"get_feed","tags":["Users\\Feeds"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"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](https://developer.vimeo.com/api/common-formats#using-the-pagination-parameter).","in":"query","name":"offset","required":false,"schema":{"type":"string","example":"280"}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The feed type.\n\nOption descriptions:\n * `appears` - Videos in which the user appears.\n * `category_featured` - Featured videos.\n * `channel` - Channel videos.\n * `facebook_feed` - Videos from the user's Facebook feed.\n * `following` - Videos from accounts that the user follows.\n * `group` - Group videos.\n * `likes` - Liked videos.\n * `ondemand_publish` - On Demand videos.\n * `share` - Shared videos.\n * `tagged_with` - Tagged videos.\n * `twitter_timeline` - Videos from the user's Twitter timeline.\n * `uploads` - Uploaded videos.\n","in":"query","name":"type","required":false,"schema":{"type":"string","enum":["appears","category_featured","channel","facebook_feed","following","group","likes","ondemand_publish","share","tagged_with","twitter_timeline","uploads"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.activity+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/activity-3-1"}}}}}},"security":[{"oauth2":["private"]}]}},"/users/{user_id}/followers":{"get":{"summary":"Get all the followers of the user","description":"This method returns every follower of the authenticated user.","operationId":"get_followers","tags":["Users\\Followers"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date followed.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The user's followers were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}}}}},"/users/{user_id}/following":{"get":{"summary":"Get all the users that the user is following","description":"This method returns every user that the authenticated user is following.","operationId":"get_user_following","tags":["Users\\Followers"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `online` - Return users who are currently online.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["online"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date followed.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The followed users were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}}}},"post":{"summary":"Follow a list of users","description":"This method causes the authenticated user to become the follower of multiple users. In the body of the request, specify the list of users to follow as\nan array of URIs, where `user01_id`, `user02_id`, `user03_id`, and so on, are the user IDs of the users in question:\n\n```\n{\n [\n {\"uri\" : \"/users/{user01_id}\"},\n {\"uri\" : \"/users/{user02_id}\"},\n {\"uri\" : \"/users/{user03_id}\"}\n ]\n}\n```","operationId":"follow_users","tags":["Users\\Followers"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"users":{"description":"An array of user IDs for the authenticated user to follow.","items":{"type":"string"},"type":"array"}},"required":["users"]}}}},"responses":{"204":{"description":"The users were followed."},"400":{"description":"* Error code 2205: The request body is empty, the users array is invalid, or the list of users doesn't contain URIs.\n* Error code 2900: A user in the list doesn't exist.\n* Error code 2901: The list contains more than 100 users.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8000: The user access token is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"* Error code 3417: The authenticated user can't follow other users.\n* Error code 3438: The authenticated user can't follow other users because email is not verified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"429":{"description":"Error code 9006: The authenticated user is rate-limited from following other users.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"500":{"description":"Error code 4005: An unexpected error occurred.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["interact"]}]}},"/users/{user_id}/following/{follow_user_id}":{"delete":{"summary":"Unfollow a user","description":"This method causes the authenticated user to stop following another user.","operationId":"unfollow_user","tags":["Users\\Followers"],"parameters":[{"description":"The ID of the user to unfollow.","in":"path","name":"follow_user_id","required":true,"schema":{"type":"number","example":3766357}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The user was unfollowed."}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Check if the user is following another user","description":"This method determines whether the authenticated user is a follower of the specified user.","operationId":"check_if_user_is_following","tags":["Users\\Followers"],"parameters":[{"description":"The ID of the user to follow.","in":"path","name":"follow_user_id","required":true,"schema":{"type":"number","example":3766357}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The authenticated user follows the specified user."},"404":{"description":"The authenticated user doesn't follow the specified user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Follow a specific user","description":"This method causes the authenticated user to become the follower of the specified user.","operationId":"follow_user","tags":["Users\\Followers"],"parameters":[{"description":"The ID of the user to follow.","in":"path","name":"follow_user_id","required":true,"schema":{"type":"number","example":3766357}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The user was followed."},"403":{"description":"* The authenticated user can't follow other users.\n* Error code 3438: The authenticated user can't follow other users because email is not verified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]}},"/users/{user_id}/groups":{"get":{"summary":"Get all the groups that the user has joined","description":"This method returns every group to which the authenticated user belongs.","operationId":"get_user_groups","tags":["Groups\\Users"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `moderated` - Return moderated groups.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["moderated"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by creation date.\n * `members` - Sort the results by number of members.\n * `videos` - Sort the results by number of videos.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","members","videos"]}}],"responses":{"200":{"description":"The groups were returned.","content":{"application/vnd.vimeo.group+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/group"}}}}}}}},"/users/{user_id}/groups/{group_id}":{"delete":{"summary":"Remove the user from a group","description":"This method removes the authenticated user from the specified group. The authenticated user can't be the owner of the group; assign a new owner through a PATCH request first.","operationId":"leave_group","tags":["Groups\\Subscriptions"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The user was removed from the group."},"403":{"description":"The authenticated user can't leave the group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]},"put":{"summary":"Add the user to a group","description":"This method adds the authenticated user to the specified group.","operationId":"join_group","tags":["Groups\\Subscriptions"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The user joined the group."},"403":{"description":"The authenticated user can't join the group. Possible reasons are that the group isn't public or that its privacy setting is `members`.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Check if a user has joined a group","description":"This method determines whether the authenticated user belongs to the specified group.","operationId":"check_if_user_joined_group","tags":["Groups\\Users"],"parameters":[{"description":"The ID of the group.","in":"path","name":"group_id","required":true,"schema":{"type":"number","example":1108}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The user belongs to the group."},"404":{"description":"* No such group exists.\n* The authenticated user isn't a member of the group.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/users/{user_id}/likes":{"get":{"summary":"Get all the videos that a user has liked","description":"This method returns every video that the authenticated user has liked.","operationId":"get_likes","tags":["Likes\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `embeddable` - Return embeddable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by creation date.\n * `duration` - Sort the results by duration.\n * `likes` - Sort the results by number of likes.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","duration","likes","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}}}}},"/users/{user_id}/likes/{video_id}":{"delete":{"summary":"Cause a user to unlike a video","description":"This method causes the authenticated user to unlike the specified video.","operationId":"unlike_video","tags":["Likes\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was unliked."},"403":{"description":"The authenticated user can't like videos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Check if the user has liked a video","description":"This method checks if the authenticated user has liked the specified video.","operationId":"check_if_user_liked_video","tags":["Likes\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The user has liked the video."},"404":{"description":"The user hasn't liked the video.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Cause the user to like a video","description":"This method causes the authenticated user to like the specified video. The user can't like their own video.","operationId":"like_video","tags":["Likes\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was liked."},"400":{"description":"The authenticated user owns the video and can't like it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user can't like videos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["interact"]}]}},"/users/{user_id}/ondemand/pages":{"get":{"summary":"Get all the On Demand pages of the user","description":"This method returns every On Demand page belonging to the authenticated user.","operationId":"get_user_vods","tags":["On Demand\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The type of pages to return.","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["film","series"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["added","alphabetical","date","modified_time","name","publish.time","rating"]}}],"responses":{"200":{"description":"The On Demand pages were returned.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/on-demand-page"}}}}},"404":{"description":"No such user exists.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Create an On Demand page","description":"This method creates a new On Demand page for the specified user. To publish the page, use the edit method.","operationId":"create_vod","tags":["On Demand\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"accepted_currencies":{"description":"An array of accepted currencies.\n\nOption descriptions:\n * `AUD` - Australian Dollar\n * `CAD` - Canadian Dollar\n * `CHF` - Swiss Franc\n * `DKK` - Danish Krone\n * `EUR` - Euro\n * `GBP` - British Pound\n * `JPY` - Japanese Yen\n * `KRW` - South Korean Won\n * `NOK` - Norwegian Krone\n * `PLN` - Polish Zloty\n * `SEK` - Swedish Krona\n * `USD` - US Dollar\n","enum":["AUD","CAD","CHF","DKK","EUR","GBP","JPY","KRW","NOK","PLN","SEK","USD"],"type":"string"},"buy":{"properties":{"active":{"description":"Whether the video can be purchased. This parameter is required when **rent.active** is `false`.","example":true,"type":"boolean"},"download":{"description":"Whether people who buy the video can download it. To use this parameter, **type** must be `film`.","example":true,"type":"boolean"},"price":{"properties":{"AUD":{"description":"The purchase price of the video in Australian dollars.","example":2.99,"type":"number"},"CAD":{"description":"The purchase price of the video in Canadian dollars.","example":2.99,"type":"number"},"CHF":{"description":"The purchase price of the video in Swiss francs.","example":2.99,"type":"number"},"DKK":{"description":"The purchase price of the video in Danish krone.","example":2.99,"type":"number"},"EUR":{"description":"The purchase price of the video in euros.","example":2.99,"type":"number"},"GBP":{"description":"The purchase price of the video in British pounds.","example":2.99,"type":"number"},"JPY":{"description":"The purchase price of the video in Japanese yen.","example":2.99,"type":"number"},"KRW":{"description":"The purchase price of the video in South Korean won.","example":2.99,"type":"number"},"NOK":{"description":"The purchase price of the video in Norwegian krone.","example":2.99,"type":"number"},"PLN":{"description":"The purchase price of the video in Polish zloty.","example":2.99,"type":"number"},"SEK":{"description":"The purchase price of the video in Swedish krona.","example":2.99,"type":"number"},"USD":{"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 U.S. dollars.","example":2.99,"type":"number"}},"type":"object"}},"type":"object"},"content_rating":{"description":"One or more ratings, either as a comma-separated list or as a JSON array, depending on the request format.","enum":["drugs","language","nudity","safe","unrated","violence"],"type":"string"},"description":{"description":"The description of the On Demand page.","example":"DARBY FOREVER follows the fantasies of Darby, a shopgirl at \"Bobbins & Notions\".","type":"string"},"domain_link":{"description":"The custom domain of the On Demand page.","example":"https://example.com","type":"string"},"episodes":{"properties":{"buy":{"properties":{"active":{"description":"Whether episodes can be purchased.","example":true,"type":"boolean"},"download":{"description":"Whether people who buy episodes can download then. To use this parameter, **type** must be `series`.","example":true,"type":"boolean"},"price":{"properties":{"USD":{"description":"The purchase price per episode in U.S. dollars. This parameter is required when **episodes.buy.active** is `true`.","example":1.99,"type":"number"}},"type":"object"}},"type":"object"},"rent":{"properties":{"active":{"description":"Whether episodes can be rented.","example":true,"type":"boolean"},"period":{"description":"The rental period of the episode.","enum":["1 week","1 year","24 hour","3 month","30 day","48 hour","6 month","72 hour"],"type":"string"},"price":{"properties":{"USD":{"description":"The rental price per episode in U.S. dollars. This parameter is applicable only when **type** is `series`, and it's required when **episode.rent.active** is `true`.","example":0.99,"type":"number"}},"type":"object"}},"type":"object"}},"type":"object"},"link":{"description":"The custom string to use in the Vimeo URL of the On Demand page.","example":"darbyforever","type":"string"},"name":{"description":"The name of the On Demand page.","example":"Darby Forever","type":"string"},"rent":{"properties":{"active":{"description":"Whether the video can be rented. This parameter is required when **episodes.rent.active** is `true`.","example":true,"type":"boolean"},"period":{"description":"The rental period of the video.","enum":["1 week","1 year","24 hour","3 month","30 day","48 hour","6 month","72 hour"],"type":"string"},"price":{"properties":{"AUD":{"description":"The rental price of the video in Australian dollars.","example":0.99,"type":"number"},"CAD":{"description":"The rental price of the video in Canadian dollars.","example":0.99,"type":"number"},"CHF":{"description":"The rental price of the video in Swiss francs.","example":0.99,"type":"number"},"DKK":{"description":"The rental price of the video in Danish krone.","example":0.99,"type":"number"},"EUR":{"description":"The rental price of the video in euros.","example":0.99,"type":"number"},"GBP":{"description":"The rental price of the video in British pounds.","example":0.99,"type":"number"},"JPY":{"description":"The rental price of the video in Japanese yen.","example":0.99,"type":"number"},"KRW":{"description":"The rental price of the video in South Korean won.","example":0.99,"type":"number"},"NOK":{"description":"The rental price of the video in Norwegian krone.","example":0.99,"type":"number"},"PLN":{"description":"The rental price of the video in Polish zloty.","example":0.99,"type":"number"},"SEK":{"description":"The rental price of the video in Swedish krona.","example":0.99,"type":"number"},"USD":{"description":"The rental price of the video in U.S. dollars when `type` is `film`, or the rental price of the entire collection in U.S. dollars when `type` is `series`.","example":0.99,"type":"number"}},"type":"object"}},"type":"object"},"subscription":{"properties":{"monthly":{"properties":{"active":{"description":"Whether monthly subscription is active. This parameter is required when **rent.active** and **buy.active** are `false`.","example":true,"type":"boolean"},"price":{"properties":{"USD":{"description":"The monthly subscription price in U.S. dollars. This parameter is required when **rent.active** and **buy.active** are `false`.","example":9.99,"type":"number"}},"type":"object"}},"type":"object"}},"type":"object"},"type":{"description":"The type of On Demand page.","enum":["film","series"],"type":"string"}},"required":["content_rating","description","name","type"]}}}},"responses":{"201":{"description":"The On Demand page was created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/on-demand-page"}}}}}}},"/users/{user_id}/ondemand/purchases":{"get":{"summary":"Get all the On Demand purchases and rentals that the user has made","description":"This method returns every purchase and rental that the authenticated user has made across all On Demand pages.","operationId":"get_vod_purchases","tags":["On Demand\\Purchases and rentals"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The type of On Demand videos to show.\n\nOption descriptions:\n * `important` - This option shows the pages that are about to expire.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["all","expiring_soon","film","important","purchased","rented","series","subscription","unwatched","watched"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["added","alphabetical","date","name","purchase_time","rating","release_date"]}}],"responses":{"200":{"description":"The purchases and rentals were returned.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/on-demand-page"}}}}},"403":{"description":"The authenticated user can't get purchases and rentals for another user's account.","content":{"application/vnd.vimeo.ondemand.page+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["purchased"]}]}},"/users/{user_id}/pictures":{"get":{"summary":"Get all the pictures that belong to the user","description":"This method returns every portrait image belonging to the authenticated user.","operationId":"get_pictures","tags":["Users\\Pictures"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The portrait images were returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/picture"}}}}}}},"post":{"summary":"Add a picture to the user's account","description":"This method adds a portrait image to the authenticated user's Vimeo account. Send the binary data of the image file to the location that you receive\nfrom the **link** field in the response. For step-by-step instructions, see\n[Working with Thumbnail Uploads](https://developer.vimeo.com/api/upload/thumbnails#uploading-a-thumbnail-step-3).","operationId":"create_picture","tags":["Users\\Pictures"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The portrait image was added.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}}},"security":[{"oauth2":["upload"]}]}},"/users/{user_id}/pictures/{portraitset_id}":{"delete":{"summary":"Delete a picture from the user's account","description":"This method removes the specified portrait image from the authenticated user's Vimeo account.","operationId":"delete_picture","tags":["Users\\Pictures"],"parameters":[{"description":"The ID of the picture.","in":"path","name":"portraitset_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"204":{"description":"The portrait image was removed."}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific picture that belongs to the user","description":"This method returns a single portrait image belonging to the authenticated user.","operationId":"get_picture","tags":["Users\\Pictures"],"parameters":[{"description":"The ID of the picture.","in":"path","name":"portraitset_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The portrait image was returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}}}},"patch":{"summary":"Edit a picture in the user's account","description":"This method edits the specified portrait image belonging to the authenticated user.","operationId":"edit_picture","tags":["Users\\Pictures"],"parameters":[{"description":"The ID of the picture.","in":"path","name":"portraitset_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"object","properties":{"active":{"description":"Whether the picture is the authenticated user's active portrait.","example":true,"type":"boolean"}}}}}},"responses":{"200":{"description":"The portrait image was edited.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}}},"security":[{"oauth2":["edit"]}]}},"/users/{user_id}/portfolios":{"get":{"summary":"Get all the portfolios that belong to the user","description":"This method returns every portfolio belonging to the authenticated user.","operationId":"get_portfolios","tags":["Portfolios\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by creation date.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The portfolios were returned.","content":{"application/vnd.vimeo.portfolio+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/portfolio"}}}}}}}},"/users/{user_id}/portfolios/{portfolio_id}":{"get":{"summary":"Get a specific portfolio","description":"This method returns a single portfolio belonging to the authenticated user.","operationId":"get_portfolio","tags":["Portfolios\\Essentials"],"parameters":[{"description":"The ID of the portfolio.","in":"path","name":"portfolio_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The portfolio was returned.","content":{"application/vnd.vimeo.portfolio+json":{"schema":{"$ref":"#/components/schemas/portfolio"}}}}}}},"/users/{user_id}/portfolios/{portfolio_id}/videos":{"get":{"summary":"Get all the videos in a portfolio","description":"This method returns every video from the specified portfolio belonging to the authenticated user.","operationId":"get_portfolio_videos","tags":["Portfolios\\Videos"],"parameters":[{"description":"The ID of the portfolio.","in":"path","name":"portfolio_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The page that contains the video URI.","in":"query","name":"containing_uri","required":false,"schema":{"type":"string","example":"/videos/258684937"}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `embeddable` - Return embeddable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by creation date.\n * `default` - Use the default sorting method.\n * `likes` - Sort the results by number of likes.\n * `manual` - Sort the results by their user-specified order.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","default","likes","manual","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}}}}},"/users/{user_id}/portfolios/{portfolio_id}/videos/{video_id}":{"delete":{"summary":"Remove a video from a portfolio","description":"This method removes a video from the specified portfolio belonging to the authenticated user.","operationId":"delete_video_from_portfolio","tags":["Portfolios\\Videos"],"parameters":[{"description":"The ID of the portfolio.","in":"path","name":"portfolio_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was removed."},"404":{"description":"No such portfolio or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific video in a portfolio","description":"This method returns a single video from the specified portfolio belonging to the authenticated user.","operationId":"get_portfolio_video","tags":["Portfolios\\Videos"],"parameters":[{"description":"The ID of the portfolio.","in":"path","name":"portfolio_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The video was returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}}}},"put":{"summary":"Add a video to a portfolio","description":"This method adds a video to the specified portfolio belonging to the authenticated user.","operationId":"add_video_to_portfolio","tags":["Portfolios\\Videos"],"parameters":[{"description":"The ID of the portfolio.","in":"path","name":"portfolio_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was added."},"404":{"description":"No such portfolio or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/users/{user_id}/presets":{"get":{"summary":"Get all the embed presets that a user has created","description":"This method returns every embed preset that belongs to the authenticated user.","operationId":"get_embed_presets","tags":["Embed Presets\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The embed presets were returned.","content":{"application/vnd.vimeo.preset+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/preset"}}}}}}}},"/users/{user_id}/presets/{preset_id}":{"get":{"summary":"Get a specific embed preset","description":"This method returns a single embed preset. The authenticated user must be the owner of the preset.","operationId":"get_embed_preset","tags":["Embed Presets\\Essentials"],"parameters":[{"description":"The ID of the preset.","in":"path","name":"preset_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The embed preset was returned.","content":{"application/vnd.vimeo.preset+json":{"schema":{"$ref":"#/components/schemas/preset"}}}}}},"patch":{"summary":"Edit an embed preset","description":"This method edits the specified embed preset. The authenticated user must be the owner of the preset.","operationId":"edit_embed_preset","tags":["Embed Presets\\Essentials"],"parameters":[{"description":"The ID of the preset.","in":"path","name":"preset_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.preset+json":{"schema":{"type":"object","properties":{"outro":{"description":"What to do with the outro.\n\nOption descriptions:\n * `nothing` - Disable the outro.\n","enum":["nothing"],"type":"string"}}}}}},"responses":{"200":{"description":"The embed preset was edited.","content":{"application/vnd.vimeo.preset+json":{"schema":{"$ref":"#/components/schemas/preset"}}}},"400":{"description":"The outro type is invalid.","content":{"application/vnd.vimeo.preset+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"* No such embed preset exists.\n* The authenticated user can't edit the embed preset.","content":{"application/vnd.vimeo.preset+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/users/{user_id}/presets/{preset_id}/videos":{"get":{"summary":"Get all the videos that have a specific embed preset","description":"This method returns every video to which the specified embed preset has been added. The authenticated user must be the owner of videos.","operationId":"get_embed_preset_videos","tags":["Embed Presets\\Videos"],"parameters":[{"description":"The ID of the embed preset.","in":"path","name":"preset_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}}}}},"/users/{user_id}/projects":{"get":{"summary":"Get all the folders that belong to the user","description":"This method returns all the folders belonging to the authenticated user.","operationId":"get_projects","tags":["Folders\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["date","default","modified_time","name"]}}],"responses":{"200":{"description":"The folders were returned.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/project"}}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]},"post":{"summary":"Create a folder","description":"This method creates a new folder for the authenticated user.","operationId":"create_project","tags":["Folders\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"The name of the folder.","example":"Rough cuts","type":"string"}},"required":["name"]}}}},"responses":{"201":{"description":"The folder was created.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/project"}}}},"400":{"description":"* Error code 2205: The input is empty.\n* Error code 2204: The input is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't create folders.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["create"]}]}},"/users/{user_id}/projects/{project_id}":{"delete":{"summary":"Delete a folder","description":"This method deletes the specified folder and optionally also the videos that it contains. The authenticated user must be the owner of the folder.","operationId":"delete_project","tags":["Folders\\Essentials"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"Whether to delete all the videos in the folder along with the folder itself.","in":"query","name":"should_delete_clips","required":false,"schema":{"type":"boolean","example":true}}],"responses":{"204":{"description":"The folder was deleted."},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't delete the folder.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such folder exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific folder","description":"This method returns a single folder belonging to the authenticated user.","operationId":"get_project","tags":["Folders\\Essentials"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The folder was returned.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/project"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such folder exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}}},"patch":{"summary":"Edit a folder","description":"This method edits the specified folder. The authenticated user must be the owner of the folder.","operationId":"edit_project","tags":["Folders\\Essentials"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"The name of the folder.","example":"Rough cuts","type":"string"}},"required":["name"]}}}},"responses":{"200":{"description":"The folder was edited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/project"}}}},"400":{"description":"* Error code 2204: The input is invalid.\n* Error code 2205: The input is empty.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't edit the folder.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such folder exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]}},"/users/{user_id}/projects/{project_id}/videos":{"delete":{"summary":"Remove a list of videos from a folder","description":"This method removes multiple videos from the specified folder. The authenticated user must be the owner of the folder.","operationId":"remove_videos_from_project","tags":["Folders\\Videos"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"Whether to delete the videos when removing them from the folder.","in":"query","name":"should_delete_clips","required":false,"schema":{"type":"boolean","example":false}},{"description":"A comma-separated list of the video URIs to remove.","in":"query","name":"uris","required":true,"schema":{"type":"string","example":"/videos/258684937,/videos/273576296"}}],"responses":{"204":{"description":"The videos were removed."},"400":{"description":"Error code 2204: The input is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such folder exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Get all the videos in a folder","description":"This method returns all the videos that belong to the specified folder.","operationId":"get_project_videos","tags":["Folders\\Videos"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date.\n * `default` - Use the default sort order.\n * `duration` - Sort the results by duration.\n * `last_user_action_event_date` - Sort the results by the date of the last user action.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","default","duration","last_user_action_event_date"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such folder exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}}},"put":{"summary":"Add a list of videos to a folder","description":"This method adds multiple videos to the specified folder. The authenticated user must be the owner of the folder.","operationId":"add_videos_to_project","tags":["Folders\\Videos"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"A comma-separated list of video URIs to add.","in":"query","name":"uris","required":true,"schema":{"type":"string","example":"/videos/258684937,/videos/273576296"}}],"responses":{"204":{"description":"The videos were added."},"400":{"description":"Error code 2204: The input is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such folder or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["interact"]}]}},"/users/{user_id}/projects/{project_id}/videos/{video_id}":{"delete":{"summary":"Remove a specific video from a folder","description":"This method removes a single video from the specified folder. Note that this will not delete the video itself.","operationId":"remove_video_from_project","tags":["Folders\\Videos"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was removed."},"400":{"description":"Error code 2204: The input is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such video exists in the folder.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["delete"]}]},"put":{"summary":"Add a specific video to a folder","description":"This method adds a single video to the specified folder. The authenticated user must be the owner of the folder.","operationId":"add_video_to_project","tags":["Folders\\Videos"],"parameters":[{"description":"The ID of the folder.","in":"path","name":"project_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was added."},"404":{"description":"Error code 5000: No such user, folder, or video exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["interact"]}]}},"/users/{user_id}/uploads/{upload_id}":{"delete":{"summary":"Complete a streaming upload","description":"This method completes the specified streaming upload of the authenticated user.","operationId":"complete_streaming_upload","tags":["Videos\\Uploads"],"parameters":[{"description":"The ID of the streaming upload.","in":"path","name":"upload_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The crypto signature of the completed upload.","in":"query","name":"signature","required":true,"schema":{"type":"string","example":"cd89a20adde7a608f3331e71c37bdfa087bacbf3"}},{"description":"The ID of the uploaded file.","in":"query","name":"video_file_id","required":true,"schema":{"type":"number","example":1234}}],"responses":{"201":{"description":"The streaming upload has been completed."},"400":{"description":"Error code 2502: The format of the video file is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"* Error code 5006: No such video file exists.\n* Error code 5007: No such signature exists.\n* Error code 8400: The signature is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"500":{"description":"Error code 4011: The upload server returned an HTTP status code other than 200.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["upload"]}]},"get":{"summary":"Get an upload attempt","description":"This method returns the specified upload attempt of the authenticated user.","operationId":"get_upload_attempt","tags":["Videos\\Uploads"],"parameters":[{"description":"The ID of the upload attempt.","in":"path","name":"upload_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"responses":{"200":{"description":"The upload attempt was returned.","content":{"application/vnd.vimeo.uploadattempt+json":{"schema":{"$ref":"#/components/schemas/upload-attempt"}}}}},"security":[{"oauth2":["upload"]}]}},"/users/{user_id}/videos":{"get":{"summary":"Get all the videos that the user has uploaded","description":"This method returns all the videos that the authenticated user has uploaded.","operationId":"get_videos","tags":["Videos\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The page that contains the video URI. The field is available only when not paired with **query**.","in":"query","name":"containing_uri","required":false,"schema":{"type":"string","example":"/videos/258684937"}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `app_only` - Return app-only videos.\n * `embeddable` - Return embeddable videos.\n * `featured` - Return featured videos.\n * `playable` - Return playable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["app_only","embeddable","featured","playable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"Whether to filter the results by playable videos (`true`) or non-playable videos (`false`).","in":"query","name":"filter_playable","required":false,"schema":{"type":"boolean","example":true}},{"description":"Whether to include content from the user's teams when searching.","in":"query","name":"include_team_content","required":false,"schema":{"type":"string","example":"true"}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically by title.\n * `date` - Sort the results by date.\n * `default` - Use the default sorting method.\n * `duration` - Sort the results by duration.\n * `last_user_action_event_date` - Sort the results by last user interaction.\n * `likes` - Sort the results by number of likes. To use this option, **direction** must be `desc`.\n * `modified_time` - Sort the results by last modification.\n * `plays` - Sort the results by number of plays. To use this option, **direction** must be `desc`.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date","default","duration","last_user_action_event_date","likes","modified_time","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"304":{"description":"The authenticated user hasn't uploaded any videos since the given **If-Modified-Since** header."}}},"post":{"summary":"Upload a video","description":"This method begins the video upload process for the authenticated user. For more information, see our [upload documentation](https://developer.vimeo.com/api/upload/videos).","operationId":"upload_video","tags":["Videos\\Uploads"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.video+json":{"schema":{"type":"object","properties":{"content_rating":{"description":"A list of values describing the content in this video. Find the full list in the [`/contentratings`](https://developer.vimeo.com/api/reference/videos#get_content_ratings) endpoint.","items":{"type":"string"},"type":"array"},"description":{"description":"The description of the video.","example":"A celebration of 10 years of Staff Picks.","type":"string"},"embed":{"properties":{"buttons":{"properties":{"embed":{"description":"Whether to show the embed button on the embeddable player.","example":true,"type":"boolean"},"fullscreen":{"description":"Whether to show the fullscreen button on the embeddable player.","example":true,"type":"boolean"},"hd":{"description":"Whether to show the HD button on the embeddable player.","example":true,"type":"boolean"},"like":{"description":"Whether to show the like button on the embeddable player.","example":true,"type":"boolean"},"scaling":{"description":"Whether to show the scaling button on the embeddable player in fullscreen mode.","example":true,"type":"boolean"},"share":{"description":"Whether to show the share button on the embeddable player.","example":true,"type":"boolean"},"watchlater":{"description":"Whether to show the watch later button on the embeddable player.","example":true,"type":"boolean"}},"type":"object"},"color":{"description":"The main color of the embeddable player.","example":"#1ab7ea","type":"string"},"logos":{"properties":{"custom":{"properties":{"active":{"description":"Whether to show the active custom logo on the embeddable player.","example":true,"type":"boolean"},"link":{"description":"The URL that loads when the user clicks the custom logo.","example":"https://example.com","type":"string"},"sticky":{"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`).","example":true,"type":"boolean"}},"type":"object"},"vimeo":{"description":"Whether to show the Vimeo logo on the embeddable player.","example":true,"type":"boolean"}},"type":"object"},"playbar":{"description":"Whether to show the playbar on the embeddable player.","example":true,"type":"boolean"},"title":{"properties":{"name":{"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","enum":["hide","show","user"],"type":"string"},"owner":{"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","enum":["hide","show","user"],"type":"string"},"portrait":{"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","enum":["hide","show","user"],"type":"string"}},"type":"object"},"volume":{"description":"Whether to show the volume selector on the embeddable player.","example":true,"type":"boolean"}},"type":"object"},"license":{"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 the public domain license.\n","enum":["by","by-nc","by-nc-nd","by-nc-sa","by-nd","by-sa","cc0"],"type":"string"},"locale":{"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.","example":"en_US","type":"string"},"name":{"description":"The title of the video.","example":"Celebrating 10 Years of Staff Picks","type":"string"},"password":{"description":"The password. This field is required when **privacy.view** is `password`.","example":"hunter1","type":"string"},"privacy":{"properties":{"add":{"description":"Whether a user can add the video to a showcase, channel, or group.","example":true,"type":"boolean"},"comments":{"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 video owner's contacts can comment on the video.\n * `nobody` - No one can comment on the video.\n","enum":["anybody","contacts","nobody"],"type":"string"},"download":{"description":"Whether a user can download the video. This field isn't available to Vimeo Basic members.","example":true,"type":"boolean"},"embed":{"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","enum":["private","public","whitelist"],"type":"string"},"view":{"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 Basic 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.\n * `contacts` - Only those who follow the owner on Vimeo can access the video.\n * `disable` - The video is embeddable, but it's hidden on Vimeo and can't be played.\n * `nobody` - No one except the owner can access the video.\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.\n","enum":["anybody","contacts","disable","nobody","password","unlisted","users"],"type":"string"}},"type":"object"},"review_page":{"properties":{"active":{"description":"Whether to enable video review.","example":true,"type":"boolean"}},"type":"object"},"spatial":{"properties":{"director_timeline":{"description":"An array representing the 360 director timeline.","items":{"type":"object","properties":{"pitch":{"description":"The 360 director timeline pitch. This value must be between −90 and 90, and it is required only when **spatial.director_timeline** is defined.","example":70,"type":"number"},"roll":{"description":"The 360 director timeline roll.","type":"number"},"time_code":{"description":"The 360 director timeline time code. This field is required only when **spatial.director_timeline** is defined.","example":5,"type":"number"},"yaw":{"description":"The 360 director timeline yaw. This value must be between 0 and 360, and it is required only when **spatial.director_timeline** is defined.","example":125,"type":"number"}},"required":["pitch","time_code","yaw"]},"type":"array"},"field_of_view":{"description":"The 360 field of view. This value must be between 30 and 90. The default is 50.","example":50,"type":"number"},"projection":{"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","enum":["cubical","cylindrical","dome","equirectangular","pyramid"],"type":"string"},"stereo_format":{"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","enum":["left-right","mono","top-bottom"],"type":"string"}},"type":"object"},"upload":{"properties":{"approach":{"description":"The upload approach.\n\nOption descriptions:\n * `post` - Use the `post` approach.\n * `pull` - Use the `pull` approach.\n * `streaming` - Use the `streaming` approach.\n * `tus` - Use the `tus` approach.\n","enum":["post","pull","streaming","tus"],"type":"string"},"link":{"description":"The public URL at which the video is hosted. The URL must be valid for at least 24 hours. Use this parameter when **approach** is `pull`.","example":"https://example.com/video.mp4","type":"string"},"redirect_url":{"description":"The app's redirect URL. Use this parameter when **approach** is `post`.","example":"https://example.com","type":"string"},"size":{"description":"The size in bytes of the video to upload.","example":"13623861","type":"string"}},"required":["approach"],"type":"object"}},"required":["upload"]}}}},"responses":{"201":{"description":"The upload procedure has begun.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"400":{"description":"* Error code 2205: The body of the request isn't formatted properly.\n* Error code 2204: The request contains invalid body parameters.\n* Error code 2230: The upload type is invalid.\n* Error code 3116: The **type** payload parameter was supplied. instead of **upload.approach**. Use **upload.approach** starting from API version 3.4.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8002: No user is associated with the access token.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"* Error code 4102: The authenticated user's allotted quota has been reached.\n* Error code 4101: The authenticated user's maximum disk space has been reached.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"500":{"description":"Error code 4003: There is a problem initiating the upload.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["upload"]}]}},"/users/{user_id}/videos/{video_id}":{"get":{"summary":"Check if the user owns a video","description":"This method determines whether the authenticated user is the owner of the specified video.","operationId":"check_if_user_owns_video","tags":["Videos\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The authenticated user owns the video.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"404":{"description":"The authenticated user doesn't own the video.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/users/{user_id}/videos/{video_id}/destinations":{"get":{"summary":"Get all the destinations of a one time event","description":"This method returns every destination of the specified one time event.","operationId":"get_one_time_event_destinations","tags":["Live\\Event destinations"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the clip.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The one time event destinations were returned.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/live-event-destination"}}}}},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't access the one time event destinations.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such live event or user exists.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]},"post":{"summary":"Create destination for live event","description":"This method creates a destination for the specified live event.","operationId":"create_one_time_event_destination","tags":["Live\\Event destinations"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the clip.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't access the one time event destinations.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such live event or user exists.","content":{"application/vnd.vimeo.live.simulcast.destination+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]}},"/users/{user_id}/videos/{video_id}/m3u8_playback":{"get":{"summary":"Get an M3U8 playback URL for a one-time live event","description":"This method returns an M3U8 playback URL for the specified one-time live event stream. You should use this endpoint only in conjunction with our recommended procedure for playing live events via HLS. For more information, [see our HLS guide](https://developer.vimeo.com/api/live/playback).","operationId":"get_one_time_event_m3u8_playback","tags":["Videos\\Live M3U8 playback"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":12345}}],"responses":{"200":{"description":"The M3U8 playback URL was returned."},"401":{"description":"Error code 8000: The user credentials are invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3200: The authenticated user can't access the M3U8 playback URL.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"Error code 5000: No such live event or user exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["private"]}]}},"/users/{user_id}/watchlater":{"get":{"summary":"Get all the videos in the user's Watch Later queue","description":"This method returns every video from the authenticated user's Watch Later queue.","operationId":"get_watch_later_queue","tags":["Watch Later Queue\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `embeddable` - Return embeddable videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["embeddable"]}},{"description":"Whether to filter the results by embeddable videos (`true`) or non-embeddable videos (`false`). This parameter is required only when **filter** is `embeddable`.","in":"query","name":"filter_embeddable","required":false,"schema":{"type":"boolean","example":true}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by date added.\n * `duration` - Sort the results by duration.\n * `likes` - Sort the results by number of likes.\n * `plays` - Sort the results by number of plays.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","duration","likes","plays"]}}],"responses":{"200":{"description":"The videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"304":{"description":"The user hasn't added any videos to their Watch Later queue since the given `If-Modified-Since` header."}},"security":[{"oauth2":["private"]}]}},"/users/{user_id}/watchlater/{video_id}":{"delete":{"summary":"Remove a video from the user's Watch Later queue","description":"This method removes the specified video from the authenticated user's Watch Later queue.","operationId":"delete_video_from_watch_later","tags":["Watch Later Queue\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was removed."}},"security":[{"oauth2":["interact"]}]},"get":{"summary":"Check if the user has added a video to their Watch Later queue","description":"This method checks the authenticated user's Watch Later queue for the specified video.","operationId":"check_watch_later_queue","tags":["Watch Later Queue\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The video is in the user's Watch Later queue.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"404":{"description":"The video isn't in the user's Watch Later queue.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["private"]}]},"put":{"summary":"Add a video to the user's Watch Later queue","description":"This method adds the specified video to the authenticated user's Watch Later queue.","operationId":"add_video_to_watch_later","tags":["Watch Later Queue\\Essentials"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was added."}},"security":[{"oauth2":["interact"]}]}},"/videos":{"get":{"summary":"Search for videos","description":"This method returns all the videos that match custom search criteria.","operationId":"search_videos","tags":["Videos\\Essentials"],"parameters":[{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"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](https://vimeo.com/creativecommons) page.\n\nOption descriptions:\n * `CC` - Return videos under any Creative Commons license.\n * `CC-BY` - Return CC BY, or attribution-only, videos.\n * `CC-BY-NC` - Return CC BY-NC, or Attribution-NonCommercial, videos.\n * `CC-BY-NC-ND` - Return CC BY-NC-ND, or Attribution-NonCommercial-NoDerivs, videos.\n * `CC-BY-NC-SA` - Return CC BY-NC-SA, or Attribution-NonCommercial-ShareAlike, videos.\n * `CC-BY-ND` - Return CC BY-NDm or Attribution-NoDerivs, videos.\n * `CC-BY-SA` - Return CC BY-SA, or Attribution-ShareAlike, videos.\n * `CC0` - Return CC0, or public domain, videos.\n * `categories` - Filter by categories.\n * `duration` - Filter by duration.\n * `in-progress` - Return in-progress videos.\n * `minimum_likes` - Filter by minimum likes.\n * `trending` - Return trending videos.\n * `upload_date` - Filter by upload date.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["CC","CC-BY","CC-BY-NC","CC-BY-NC-ND","CC-BY-NC-SA","CC-BY-ND","CC-BY-SA","CC0","categories","duration","in-progress","minimum_likes","trending","upload_date"]}},{"description":"A comma-separated list of video URLs to find.","in":"query","name":"links","required":false,"schema":{"type":"string","example":"https://vimeo.com/122375452,https://vimeo.com/273576296"}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query.","in":"query","name":"query","required":true,"schema":{"type":"string","example":"staff picks"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `comments` - Sort the results by number of comments.\n * `date` - Sort the results by date.\n * `duration` - Sort the results by duration.\n * `likes` - Sort the results by number of likes.\n * `plays` - Sort the results by number of plays.\n * `relevant` - Sort the results by relevance.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","comments","date","duration","likes","plays","relevant"]}},{"description":"A comma-separated list of video URIs to find.","in":"query","name":"uris","required":false,"schema":{"type":"string","example":"/videos/122375452,/videos/273576296"}}],"responses":{"200":{"description":"The search results were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"400":{"description":"* Error code 2101: Either the **uris** or **links** parameter has filtering or sorting arguments.\n* Error code 2204: A problem occurred with the batch request.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"503":{"description":"* Search is disabled.\n* Error code 7300: An internal search error occurred.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/videos/{video_id}":{"delete":{"summary":"Delete a video","description":"This method deletes the specified video. The authenticated user must be the owner of the video.","operationId":"delete_video","tags":["Videos\\Essentials"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video was deleted."},"403":{"description":"The authenticated user can't delete this video.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific video","description":"This method returns a single video.","operationId":"get_video","tags":["Videos\\Essentials"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The video was returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"404":{"description":"No such video exists.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"patch":{"summary":"Edit a video","description":"This method edits the specified video.","operationId":"edit_video","tags":["Videos\\Essentials"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.video+json":{"schema":{"type":"object","properties":{"content_rating":{"description":"A list of values describing the content in this video. Find the full list in the [`/contentratings`](https://developer.vimeo.com/api/reference/videos#get_content_ratings) endpoint.","items":{"type":"string"},"type":"array"},"description":{"description":"The description of the video. This field can hold a maximum of 5000 characters.","example":"A celebration of 10 years of Staff Picks.","type":"string"},"embed":{"properties":{"buttons":{"properties":{"embed":{"description":"Whether to show the embed button on the embeddable player.","example":true,"type":"boolean"},"fullscreen":{"description":"Whether to show the fullscreen button on the embeddable player.","example":true,"type":"boolean"},"hd":{"description":"Whether to show the HD button on the embeddable player.","example":true,"type":"boolean"},"like":{"description":"Whether to show the like button on the embeddable player.","example":true,"type":"boolean"},"scaling":{"description":"Whether to show the scaling button on the embeddable player in fullscreen mode.","example":true,"type":"boolean"},"share":{"description":"Whether to show the share button on the embeddable player.","example":true,"type":"boolean"},"watchlater":{"description":"Whether to show the watch later button on the embeddable player.","example":true,"type":"boolean"}},"type":"object"},"color":{"description":"The main color of the embeddable player.","example":"#1ab7ea","type":"string"},"logos":{"properties":{"custom":{"properties":{"active":{"description":"Whether to show the active custom logo on the embeddable player.","example":true,"type":"boolean"},"id":{"description":"The ID of the custom logo that will show on the emeddable player.","example":462119,"nullable":true,"type":"number"},"link":{"description":"The URL that loads when the user clicks the custom logo.","example":"https://example.com","nullable":true,"type":"string"},"sticky":{"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`).","example":true,"type":"boolean"}},"type":"object"},"vimeo":{"description":"Whether to show the Vimeo logo on the embeddable player.","example":true,"type":"boolean"}},"type":"object"},"playbar":{"description":"Whether to show the playbar on the embeddable player.","example":true,"type":"boolean"},"title":{"properties":{"name":{"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","enum":["hide","show","user"],"type":"string"},"owner":{"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","enum":["hide","show","user"],"type":"string"},"portrait":{"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","enum":["hide","show","user"],"type":"string"}},"type":"object"},"volume":{"description":"Whether to show the volume selector on the embeddable player.","example":true,"type":"boolean"}},"type":"object"},"license":{"description":"The Creative Commons license under which the video is offered.","enum":["by","by-nc","by-nc-nd","by-nc-sa","by-nd","by-sa","cc0"],"type":"string"},"locale":{"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.","example":"en-US","type":"string"},"name":{"description":"The title of the video. This field can hold a maximum of 128 characters.","example":"Celebrating 10 Years of Staff Picks","type":"string"},"password":{"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.","example":"hunter1","type":"string"},"privacy":{"properties":{"add":{"description":"Whether a user can add the video to a showcase, channel, or group.","example":true,"type":"boolean"},"comments":{"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","enum":["anybody","contacts","nobody"],"type":"string"},"download":{"description":"Whether a user can download the video. This field isn't available to Vimeo Basic members.","example":true,"type":"boolean"},"embed":{"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","enum":["private","public","whitelist"],"type":"string"},"view":{"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 Basic 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.\n * `contacts` - Only those who follow the owner on Vimeo can access the video.\n * `disable` - The video is embeddable, but it's hidden on Vimeo and can't be played.\n * `nobody` - No one except the owner can access the video.\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.\n","enum":["anybody","contacts","disable","nobody","password","unlisted","users"],"type":"string"}},"type":"object"},"review_page":{"properties":{"active":{"description":"Whether to enable video review.","example":true,"type":"boolean"}},"type":"object"},"spatial":{"properties":{"director_timeline":{"description":"An array representing the 360 director timeline.","items":{"type":"object","properties":{"pitch":{"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.","example":70,"type":"number"},"roll":{"description":"The 360 director timeline roll.","type":"number"},"time_code":{"description":"The 360 director timeline time code. This paramater is qequired only when **spatial.director_timeline** is defined.","example":5,"type":"number"},"yaw":{"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.","example":125,"type":"number"}},"required":["pitch","time_code","yaw"]},"type":"array"},"field_of_view":{"description":"The 360 field of view. This value must be between 30 and 90. The default is 50.","example":50,"type":"number"},"projection":{"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","enum":["cubical","cylindrical","dome","equirectangular","pyramid"],"type":"string"},"stereo_format":{"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","enum":["left-right","mono","top-bottom"],"type":"string"}},"type":"object"}}}}}},"responses":{"200":{"description":"The video was edited.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/video"}}}},"400":{"description":"A parameter is invalid.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"* The authenticated user doesn't own the video.\n* The **privacy** field is `disable`, and the authenticated user can't set extra embed options.\n* The **privacy** field is `contacts`, and the authenticated user can't follow creators.\n* The authenticated user has an opted-out Pro account, and **privacy.view** is `users`, `password`, `nobody`, or `public`.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/albums":{"get":{"summary":"Get all the albums that contain a video","description":"This endpoint returns all the showcases that contain the specified video.","operationId":"get_video_albums","tags":["Videos\\Showcases"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The showcases were returned.","content":{"application/vnd.vimeo.album+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/album"}}}}},"404":{"description":"Error code 3433: No such video exists.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/error"}}}}}},"patch":{"summary":"Add or remove a video from a list of showcases","description":"This endpoint adds the specified video to (or removes the video from) muliple showcases.","operationId":"add_or_remove_multiple_albums","tags":["Videos\\Showcases"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.album+json":{"schema":{"type":"object","properties":{"add":{"description":"The array of showcase URIs to add the video to. Specify these with a batch request; see our [Using Common Formats and Parameters](https://developer.vimeo.com/api/common-formats#working-with-batch-requests) guide for more information.","items":{"type":"string"},"type":"array"},"remove":{"description":"The array of showcase URIs to remove the video from. Specify these with a batch request; see our [Using Common Formats and Parameters](https://developer.vimeo.com/api/common-formats#working-with-batch-requests) guide for more information.","items":{"type":"string"},"type":"array"}}}}}},"responses":{"200":{"description":"The videos were added or removed.","content":{"application/vnd.vimeo.album+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/album"}}}}},"404":{"description":"Error code 3433: No such video exists.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/error"}}}}}}},"/videos/{video_id}/available_albums":{"get":{"summary":"Get all the showcases to which the user can add or remove a specific video","description":"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":"get_available_video_showcases","tags":["Showcases\\Showcase videos"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The showcases were returned.","content":{"application/vnd.vimeo.album+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/album"}}}}},"403":{"description":"Error code 3433: The authenticated user can't add the video to or remove the video from any showcases.","content":{"application/vnd.vimeo.album+json":{"schema":{"$ref":"#/components/schemas/error"}}}}}}},"/videos/{video_id}/available_channels":{"get":{"summary":"Get all the channels to which the user can add or remove a specific video","description":"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":"get_available_video_channels","tags":["Channels\\Videos"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The channels were returned.","content":{"application/vnd.vimeo.channel+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/channel"}}}}},"403":{"description":"The authenticated user can't add or remove this video from a channel.","content":{"application/vnd.vimeo.channel+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"The authenticated user isn't a moderator of the channel.","content":{"application/vnd.vimeo.channel+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/videos/{video_id}/categories":{"get":{"summary":"Get all the categories to which a video belongs","description":"This method returns every category that contains the specified video.","operationId":"get_video_categories","tags":["Categories\\Videos"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The categories were returned.","content":{"application/vnd.vimeo.category+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/category"}}}}},"404":{"description":"No such video exists.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Suggest categories for a video","description":"This method suggests up to two categories and one subcategory for the specified video. The authenticated user must be the owner of the video. Vimeo makes the final determination about whether the video belongs in these categories.","operationId":"suggest_video_category","tags":["Categories\\Videos"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.category+json":{"schema":{"type":"object","properties":{"category":{"description":"An array of the names of the desired categories.","items":{"type":"string"},"type":"array"}},"required":["category"]}}}},"responses":{"201":{"description":"The categories were suggested.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/category"}}}},"403":{"description":"The authenticated user doesn't own this video.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such video exists, or no such category exists.","content":{"application/vnd.vimeo.category+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/comments":{"get":{"summary":"Get all the video comments on a video","description":"This method returns every video comment on the specified video.","operationId":"get_comments","tags":["Videos\\Video comments"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The comments were returned.","content":{"application/vnd.vimeo.comment+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/comment"}}}}}}},"post":{"summary":"Add a video comment to a video","description":"This method adds a video comment to the specified video.","operationId":"create_comment","tags":["Videos\\Video comments"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.comment+json":{"schema":{"type":"object","properties":{"text":{"description":"The text of the comment.","example":"I love this!","type":"string"}},"required":["text"]}}}},"responses":{"201":{"description":"The comment was added.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/comment"}}}},"400":{"description":"Error code 2207: The comment text is missing.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"* Error code 3301: The comment was flagged as spam.\n* Error code 3411: The authenticated user is unverified.\n* Error code 3412: The authenticated user can't comment.\n* Error code 3413: Comments are disabled for this video.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["interact"]}]}},"/videos/{video_id}/comments/{comment_id}":{"delete":{"summary":"Delete a video comment","description":"This method deletes the specified video comment. The authenticated user must be the owner of the comment.","operationId":"delete_comment","tags":["Videos\\Video comments"],"parameters":[{"description":"The ID of the comment.","in":"path","name":"comment_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The comment was deleted."},"403":{"description":"Error code 3415: The authenticated user can't delete this comment.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"* No such video or comment exists.\n* Error code 5000: The comment wasn't deleted and still exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific video comment","description":"This method returns the specified video comment.","operationId":"get_comment","tags":["Videos\\Video comments"],"parameters":[{"description":"The ID of the comment.","in":"path","name":"comment_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The comment was returned.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/comment"}}}},"404":{"description":"No such video or comment exists.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"patch":{"summary":"Edit a video comment","description":"This method edits the specified video comment. The authenticated user must be the owner of the comment.","operationId":"edit_comment","tags":["Videos\\Video comments"],"parameters":[{"description":"The ID of the comment.","in":"path","name":"comment_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.comment+json":{"schema":{"type":"object","properties":{"text":{"description":"The new comment text.","example":"I love this!","type":"string"}},"required":["text"]}}}},"responses":{"200":{"description":"The comment was edited.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/comment"}}}},"400":{"description":"Error code 2207: The comment text is missing.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"* Error code 3301: The comment was flagged as spam.\n* Error code 3411: The authenticated user is unverified.\n* Error code 3412: The authenticated user can't post comments.\n* Error code 3414: The authenticated user can't edit this comment.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/comments/{comment_id}/replies":{"get":{"summary":"Get all the replies to a video comment","description":"This method returns every reply to the specified video comment.","operationId":"get_comment_replies","tags":["Videos\\Video comments"],"parameters":[{"description":"The ID of the comment.","in":"path","name":"comment_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The replies were returned.","content":{"application/vnd.vimeo.comment+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/comment"}}}}},"404":{"description":"No such video or comment exists.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Add a reply to a video comment","description":"This method adds a reply to the specified video comment.","operationId":"create_comment_reply","tags":["Videos\\Video comments"],"parameters":[{"description":"The ID of the comment.","in":"path","name":"comment_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.comment+json":{"schema":{"type":"object","properties":{"text":{"description":"The reply to the comment.","example":"I love this!","type":"string"}},"required":["text"]}}}},"responses":{"201":{"description":"The reply was added.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/comment"}}}},"400":{"description":"Error code 2207: The comment text is missing.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"* Error code 3301: The comment was flagged as spam.\n* Error code 3411: The authenticated user is unverified.\n* Error code 3412: The authenticated user can't comment.\n* Error code 3413: Comments are disabled on this video.","content":{"application/vnd.vimeo.comment+json":{"schema":{"$ref":"#/components/schemas/error"}}}}},"security":[{"oauth2":["interact"]}]}},"/videos/{video_id}/credits":{"get":{"summary":"Get all the credited users in a video","description":"This method returns every credited user in a video.","operationId":"get_video_credits","tags":["Videos\\Credits"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The search query to use to filter the results.","in":"query","name":"query","required":false,"schema":{"type":"string","example":"Stop motion"}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by date.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The credited users were returned.","content":{"application/vnd.vimeo.credit+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/credit"}}}}}}},"post":{"summary":"Credit a user in a video","description":"This method adds a user credit to the specified video.","operationId":"add_video_credit","tags":["Videos\\Credits"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.credit+json":{"schema":{"type":"object","properties":{"email":{"description":"The email address of the credited person.","example":"user@example.com","type":"string"},"name":{"description":"The name of the credited person.","example":"Sam Doe","type":"string"},"role":{"description":"The role of the credited person.","example":"Producer","type":"string"},"user_uri":{"description":"The Vimeo URI of the credited person.","example":"/users/152184","type":"string"}},"required":["email","name","role","user_uri"]}}}},"responses":{"201":{"description":"The credit was added.","content":{"application/vnd.vimeo.credit+json":{"schema":{"$ref":"#/components/schemas/credit"}}}},"400":{"description":"* A parameter is invalid.\n* The authenticated user has an unverified email address.\n* There is a user block between the video owner and the person receiving credit.","content":{"application/vnd.vimeo.credit+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The authenticated user doesn't own the video.","content":{"application/vnd.vimeo.credit+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/videos/{video_id}/credits/{credit_id}":{"delete":{"summary":"Delete the credit for a user in a video","description":"This method deletes the specified user credit from a video. The authenticated user must be the creator of the credit or the credited user.","operationId":"delete_video_credit","tags":["Videos\\Credits"],"parameters":[{"description":"The ID of the credit.","in":"path","name":"credit_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The credit was deleted."},"400":{"description":"The authenticated user isn't the creator of the credit or the credited user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific credited user in a video","description":"This method returns a single credited user in a video.","operationId":"get_video_credit","tags":["Videos\\Credits"],"parameters":[{"description":"The ID of the credit.","in":"path","name":"credit_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The credit was returned.","content":{"application/vnd.vimeo.credit+json":{"schema":{"$ref":"#/components/schemas/credit"}}}},"404":{"description":"No such video or credit exists.","content":{"application/vnd.vimeo.credit+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"patch":{"summary":"Edit the credit for a user in a video","description":"This method edits the specified user credit in a video.","operationId":"edit_video_credit","tags":["Videos\\Credits"],"parameters":[{"description":"The ID of the credit.","in":"path","name":"credit_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.credit+json":{"schema":{"type":"object","properties":{"name":{"description":"The name of the credited person.","example":"Sam Doe","type":"string"},"role":{"description":"The role of the credited person.","example":"Producer","type":"string"}}}}}},"responses":{"200":{"description":"The credit was edited.","content":{"application/vnd.vimeo.credit+json":{"schema":{"$ref":"#/components/schemas/credit"}}}},"400":{"description":"A parameter is invalid.","content":{"application/vnd.vimeo.credit+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such video or credit exists.","content":{"application/vnd.vimeo.credit+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/likes":{"get":{"summary":"Get all the users who have liked a video","description":"This method returns every user who has liked the specified video.","operationId":"get_video_likes","tags":["Likes\\Essentials"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The sort direction of the results.\n\nOption descriptions:\n * `asc` - Sort the results in ascending order.\n * `desc` - Sort the results in descending order.\n","in":"query","name":"direction","required":false,"schema":{"type":"string","example":"asc","enum":["asc","desc"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}},{"description":"The way to sort the results.\n\nOption descriptions:\n * `alphabetical` - Sort the results alphabetically.\n * `date` - Sort the results by join date.\n","in":"query","name":"sort","required":false,"schema":{"type":"string","enum":["alphabetical","date"]}}],"responses":{"200":{"description":"The users were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}}}}},"/videos/{video_id}/pictures":{"get":{"summary":"Get all the thumbnails of a video","description":"This method returns every thumbnail images of the specified video. The authenticated user must have team permissions for the video.","operationId":"get_video_thumbnails","tags":["Videos\\Thumbnails"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The thumbnails were returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/picture"}}}}}}},"post":{"summary":"Add a video thumbnail","description":"This method adds a thumbnail image to the specified video. The authenticated user must have team permissions for the video.","operationId":"create_video_thumbnail","tags":["Videos\\Thumbnails"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"object","properties":{"active":{"description":"Whether the image created by the **time** field should be the default thumbnail for the video.","example":true,"type":"boolean"},"time":{"description":"The time offset in seconds from which to create the thumbnail.","example":300,"type":"number"}}}}}},"responses":{"201":{"description":"The thumbnail was created.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}}},"security":[{"oauth2":["upload"]}]}},"/videos/{video_id}/pictures/{picture_id}":{"delete":{"summary":"Delete a video thumbnail","description":"This method deletes the specified thumbnail image from a video. The authenticated user must have team permissions for the video.","operationId":"delete_video_thumbnail","tags":["Videos\\Thumbnails"],"parameters":[{"description":"The ID of the thumbnail.","in":"path","name":"picture_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The thumbnail was deleted."}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific video thumbnail","description":"This method returns a single thumbnail image from the specified video. The authenticated user must have team permissions for the video.","operationId":"get_video_thumbnail","tags":["Videos\\Thumbnails"],"parameters":[{"description":"The ID of the thumbnail.","in":"path","name":"picture_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The thumbnail was returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}}}},"patch":{"summary":"Edit a video thumbnail","description":"This method edits the specified video thumbnail image. The authenticated user must be the owner of the thumbnail.","operationId":"edit_video_thumbnail","tags":["Videos\\Thumbnails"],"parameters":[{"description":"The ID of the thumbnail.","in":"path","name":"picture_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.picture+json":{"schema":{"type":"object","properties":{"active":{"description":"Whether this thumbnail is the default.","example":true,"type":"boolean"}}}}}},"responses":{"200":{"description":"The thumbnail was edited.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/presets/{preset_id}":{"delete":{"summary":"Remove an embed preset from a video","description":"This method removes the specified embed preset from a video. The authenticated user must be the owner of the video.","operationId":"delete_video_embed_preset","tags":["Embed Presets\\Videos"],"parameters":[{"description":"The ID of the embed preset.","in":"path","name":"preset_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The embed preset was removed."},"404":{"description":"No such video or embed preset exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Check if an embed preset has been added to a video","description":"This method determines whether a video has the specified embed preset.","operationId":"get_video_embed_preset","tags":["Embed Presets\\Videos"],"parameters":[{"description":"The ID of the embed preset.","in":"path","name":"preset_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The embed preset has been added to the video."},"404":{"description":"No such video or embed preset exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Add an embed preset to a video","description":"This method adds an embed preset to the specified video. The authenticated user must be the owner of the video.","operationId":"add_video_embed_preset","tags":["Embed Presets\\Videos"],"parameters":[{"description":"The ID of the embed preset.","in":"path","name":"preset_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The embed preset was added to the video."}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/privacy/domains":{"get":{"summary":"Get all the domains on a video's whitelist","description":"This method returns every domain on the specified video's whitelist.","operationId":"get_video_privacy_domains","tags":["Videos\\Embed privacy"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The domains were returned.","content":{"application/vnd.vimeo.domain+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/domain"}}}}},"403":{"description":"There are no domains on which the video can be embedded.","content":{"application/vnd.vimeo.domain+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/videos/{video_id}/privacy/domains/{domain}":{"delete":{"summary":"Remove a domain from a video's whitelist","description":"This method removes the specified domain from a video's whitelist.","operationId":"delete_video_privacy_domain","tags":["Videos\\Embed privacy"],"parameters":[{"description":"The domain name.","in":"path","name":"domain","required":true,"schema":{"type":"string","example":"example.com"}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The domain was removed."},"403":{"description":"The video's embed privacy setting isn't `whitelist`.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such domain exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"put":{"summary":"Add a domain to a video's whitelist","description":"This method adds the specified domain to a video's whitelist.","operationId":"add_video_privacy_domain","tags":["Videos\\Embed privacy"],"parameters":[{"description":"The domain name.","in":"path","name":"domain","required":true,"schema":{"type":"string","example":"example.com"}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The video is embeddable on the domain."},"403":{"description":"The video doesn't have a user-defined access list.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/privacy/users":{"get":{"summary":"Get all the users who can view a private video","description":"This method returns every user who has access to the specified private video.","operationId":"get_video_privacy_users","tags":["Videos\\Private videos"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The users were returned.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}},"400":{"description":"No users can view this private video.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Permit a list of users to access a private video","description":"This method gives multiple users permission to access the specified private video. The authenticated user must be the owner of the video. The body of the request should follow our [batch request format](https://developer.vimeo.com/api/common-formats#working-with-batch-requests): each object must contain a single **uri** field whose value is the URI of the user who can access the video.","operationId":"add_video_privacy_users","tags":["Videos\\Private videos"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The users have been granted access to the private video.","content":{"application/vnd.vimeo.user+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/user"}}}}}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/privacy/users/{user_id}":{"delete":{"summary":"Restrict a user from viewing a private video","description":"This method prevents a user from being able to view the specified private video. The authenticated user must be the owner of the video.","operationId":"delete_video_privacy_user","tags":["Videos\\Private videos"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The user has been restricted from accessing the private video."},"403":{"description":"The video isn't set to a user-defined access list.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such user exists.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"put":{"summary":"Permit a specific user to access a private video","description":"This method gives a single user permission to access the specified private video. The authenticated user must be the owner of the video.","operationId":"add_video_privacy_user","tags":["Videos\\Private videos"],"parameters":[{"description":"The ID of the user.","in":"path","name":"user_id","required":true,"schema":{"type":"number","example":152184}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The user has been granted access to the private video.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/user"}}}},"204":{"description":"The user can already access this private video."},"403":{"description":"The video doesn't have a user-defined access list.","content":{"application/vnd.vimeo.user+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/tags":{"get":{"summary":"Get all the tags of a video","description":"This method returns all the tags associated with the specified video. The authenticated user must be the owner of the video.","operationId":"get_video_tags","tags":["Videos\\Tags"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The tags were returned.","content":{"application/vnd.vimeo.tag+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/tag"}}}}}}},"put":{"summary":"Add a list of tags to a video","description":"This method adds multiple tags to the specified video. The authenticated user must be the owner of the video.","operationId":"add_video_tags","tags":["Videos\\Tags"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.tag+json":{"schema":{"type":"object","properties":{"name":{"description":"The name of the tag to apply. Specify multiple tag names as a batch request; see [Using Common Formats and Parameters](https://developer.vimeo.com/api/common-formats#working-with-batch-requests) for details.","example":"awesome","type":"string"},"page":{"description":"The page number of the results to show.","example":1,"type":"number"},"per_page":{"description":"The number of items to show on each page of results, up to a maximum of 100.","example":10,"type":"number"}},"required":["name"]}}}},"responses":{"200":{"description":"The tags were added.","content":{"application/vnd.vimeo.tag+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/tag"}}}}},"400":{"description":"* The request body wasn't supplied.\n* A parameter is invalid.\n* The request body doesn't contain a JSON-encoded list of tags.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"* The authenticated user can't add tags to this video.\n* The total number of tags can't exceed 20.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/tags/{word}":{"delete":{"summary":"Remove a tag from a video","description":"This method removes the specified tag from a video. The authenticated user must be the owner of the video.","operationId":"delete_video_tag","tags":["Videos\\Tags"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The tag word.","in":"path","name":"word","required":true,"schema":{"type":"string","example":"awesome"}}],"responses":{"204":{"description":"The tag was removed."},"400":{"description":"* A parameter is invalid.\n* The tag is invalid.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Check if a tag has been added to a video","description":"This method determines whether the specified tag has been added to a video. The authenticated user must be the owner of the video.","operationId":"check_video_for_tag","tags":["Videos\\Tags"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The tag word.","in":"path","name":"word","required":true,"schema":{"type":"string","example":"awesome"}}],"responses":{"200":{"description":"The tag has been added to the video.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/tag"}}}},"400":{"description":"* A parameter is invalid.\n* The tag is invalid.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"The video has no such tag.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"put":{"summary":"Add a specific tag to a video","description":"This method adds a single tag to the specified video. The authenticated user must be the owner of the video.","operationId":"add_video_tag","tags":["Videos\\Tags"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The tag word.","in":"path","name":"word","required":true,"schema":{"type":"string","example":"awesome"}}],"responses":{"200":{"description":"The tag was added.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/tag"}}}},"400":{"description":"* The tag is invalid.\n* An unsupported parameter was supplied.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"403":{"description":"The total number of tags can't exceed 20.","content":{"application/vnd.vimeo.tag+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/texttracks":{"get":{"summary":"Get all the text tracks of a video","description":"This method returns every text track of the specified video. The authenticated user must be the owner of the video.","operationId":"get_text_tracks","tags":["Videos\\Text tracks"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The text tracks were returned.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/text-track"}}}}},"404":{"description":"No such video exists.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Add a text track to a video","description":"This method adds a text track to the specified video. For more information, see [Working with Text Track Uploads](https://developer.vimeo.com/api/upload/texttracks).","operationId":"create_text_track","tags":["Videos\\Text tracks"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"type":"object","properties":{"active":{"description":"Whether the current text track is the *active text track,* or the one that appears in the player. Only one text track per language and type can be active.","example":true,"type":"boolean"},"language":{"description":"The language of the text track. For a full list of supported language, use the [`/languages?filter=texttracks`](https://developer.vimeo.com/api/reference/videos#get_languages) endpoint.","example":"en-US","type":"string"},"name":{"description":"The name of the text track.","example":"Commentary","type":"string"},"type":{"description":"The type of the text track.\n\nOption descriptions:\n * `captions` - The text track is the captions type.\n * `chapters` - The text track is the chapters type.\n * `descriptions` - The text track is the descriptions type.\n * `metadata` - The text track is the metadata type.\n * `subtitles` - The text track is the subtitles type.\n","enum":["captions","chapters","descriptions","metadata","subtitles"],"type":"string"}},"required":["language","name","type"]}}}},"responses":{"201":{"description":"The text track was added.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/text-track"}}}},"403":{"description":"* The authenticated user can't add the text track.\n* Error code 2204: The request contains errors.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["upload"]}]}},"/videos/{video_id}/texttracks/{texttrack_id}":{"delete":{"summary":"Delete a text track","description":"This method deletes the specified text track from a video. The authenticated user must be the owner of the video.","operationId":"delete_text_track","tags":["Videos\\Text tracks"],"parameters":[{"description":"The ID of the text track.","in":"path","name":"texttrack_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"The text track was deleted."},"403":{"description":"* Error code 3430: The authenticated user doesn't have permission to access the text track.\n* Error code 3431: This text track is disabled.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"* No such video or text track exists.\n* The authenticated user can't delete the text track.\n* Error code 5014: The specified text track doesn't exist.\n* Error code 5015: The specified text track belongs to a different video.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["delete"]}]},"get":{"summary":"Get a specific text track","description":"This method returns a single text track of the specified video. The authenticated user must be the owner of the video.","operationId":"get_text_track","tags":["Videos\\Text tracks"],"parameters":[{"description":"The ID of the text track.","in":"path","name":"texttrack_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The text track was returned.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/text-track"}}}},"403":{"description":"* Error code 3430: The authenticated user doesn't have permission to access the text track.\n* Error code 3431: This text track is disabled.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"* No such video or text track exists.\n* Error code 5014: The specified text track doesn't exist.\n* Error code 5015: The specified text track belongs to a different video.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"patch":{"summary":"Edit a text track","description":"This method edits the specified text track of a video. The authenticated user must be the owner of the video.","operationId":"edit_text_track","tags":["Videos\\Text tracks"],"parameters":[{"description":"The ID of the text track.","in":"path","name":"texttrack_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"type":"object","properties":{"active":{"description":"Whether the current text track is the *active text track,* or the one that appears in the player. Only one text track per language and per type can be active.","example":true,"type":"boolean"},"language":{"description":"The language of the text track. For a full list of supported languages, use the [`/languages?filter=texttracks`](https://developer.vimeo.com/api/reference/videos#get_languages) endpoint.","example":"en-US","type":"string"},"name":{"description":"The name of the text track.","example":"Commentary","type":"string"},"type":{"description":"The type of the text track.\n\nOption descriptions:\n * `captions` - The text track is the captions type.\n * `chapters` - The text track is the chapters type.\n * `descriptions` - The text track is the descriptions type.\n * `metadata` - The text track is the metadata type.\n * `subtitles` - The text track is the subtitles type.\n","enum":["captions","chapters","descriptions","metadata","subtitles"],"type":"string"}}}}}},"responses":{"200":{"description":"The text track was edited.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/text-track"}}}},"403":{"description":"* The authenticated user can't edit the text track.\n* Error code 2204: There are errors in the request.\n* Error code 3430: The authenticated user doesn't have permission to access the text track.\n* Error code 3431: This text track is disabled.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"* No such video or text track exists.\n* Error code 5014: The specified text track doesn't exist.\n* Error code 5015: The specified text track belongs to a different video.","content":{"application/vnd.vimeo.video.texttrack+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/timelinethumbnails":{"post":{"summary":"Add a timeline event thumbnail to a video","description":"This method adds a timeline event thumbnail to the specified video. The authenticated user must be the owner of the video.","operationId":"create_video_custom_logo","tags":["Embed Presets\\Timeline events"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"201":{"description":"The timeline event thumbnail was added.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't add a timeline event thumbnail to the video.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}},"404":{"description":"No such video exists.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["upload"]}]}},"/videos/{video_id}/timelinethumbnails/{thumbnail_id}":{"get":{"summary":"Get a timeline event thumbnail","description":"This method returns a single timeline event thumbnail that belongs to the specified video.","operationId":"get_video_custom_logo","tags":["Embed Presets\\Timeline events"],"parameters":[{"description":"The ID of the timeline event thumbnail.","in":"path","name":"thumbnail_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"The timeline event thumbnail was returned.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/picture"}}}},"403":{"description":"The authenticated user can't access the timeline event thumbnail.","content":{"application/vnd.vimeo.picture+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}},"/videos/{video_id}/versions":{"get":{"summary":"Get all the versions of a video","description":"This method returns every version of the specified video. The authenticated user must be the owner of the video.","operationId":"get_video_versions","tags":["Videos\\Versions"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"Standard request.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video-version"}}}}},"401":{"description":"* Error code 3200: The authenticated user can't access the video versions.\n* Error code 8003: The user credentials are invalid.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"No such video exists.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"post":{"summary":"Add a version to a video","description":"This method adds a version to the specified video. The authenticated user must be the owner of the video.","operationId":"create_video_version","tags":["Videos\\Versions"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":true,"content":{"application/vnd.vimeo.video.version+json":{"schema":{"type":"object","properties":{"file_name":{"description":"The name of the version.","example":"untitled.mp4","type":"string"},"upload":{"properties":{"approach":{"description":"The approach by which to upload the version.\n\nOption descriptions:\n * `post` - Use the `post` method.\n * `pull` - Use the `pull` method.\n * `streaming` - Use the `streaming` method.\n * `tus` - Use the `tus` method.\n","enum":["post","pull","streaming","tus"],"type":"string"},"link":{"description":"When **upload.approach** is `pull`, the public URL from which to download the version. This URL must be valid for at least 24 hours.","example":"https://example.com","type":"string"},"redirect_url":{"description":"When **upload.approach** is `post`, the app's redirect URL.","example":"https://example.com","type":"string"},"size":{"description":"The upload size of the version.","example":"13623861","type":"string"}},"required":["approach"],"type":"object"}},"required":["file_name","upload"]}}}},"responses":{"201":{"description":"The version was added.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/video-version"}}}},"400":{"description":"Error code 2204: The request input contains invalid version data.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"403":{"description":"Error code 3427: The authenticated user can't edit the video.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"* Error code 5011: An upload isn't associated with this version.\n* Error code 5012: A video isn't associated with this upload.\n* Error code 5013: The endpoint isn't available, because the specified version of the API is less than 3.4 and **upload.approach** isn't `tus`.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/error"}}}}}}},"/videos/{video_id}/versions/{version_id}":{"delete":{"summary":"Delete a video version","description":"This method deletes the specified version from a video. The authenticated user must be the owner of the video.","operationId":"delete_video_version","tags":["Videos\\Versions"],"parameters":[{"description":"The ID of the video version.","in":"path","name":"version_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"204":{"description":"Standard request."},"404":{"description":"* No such video exists.\n* Error code 8003: The user credentials are invalid.\n* Error code 3200: The authenticated user can't access the versions of this video.\n* Error code 2523: The version isn't associated with the video.\n* Error code 2538: The specified version is the clip's current version and cannot be deleted.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]},"get":{"summary":"Get a specific video version","description":"This method returns a single version of the specified video. The authenticated user must be the owner of the video.","operationId":"get_video_version","tags":["Videos\\Versions"],"parameters":[{"description":"The ID of the video version.","in":"path","name":"version_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"responses":{"200":{"description":"Standard request."},"404":{"description":"* No such video exists.\n* Error code 8003: The user credentials are invalid.\n* Error code 3200: The authenticated user can't access the versions of this video.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}},"patch":{"summary":"Edit a video version","description":"This method edits the specified version of a video. The authenticated user must be the owner of the video.","operationId":"edit_video_version","tags":["Videos\\Versions"],"parameters":[{"description":"The ID of the video version.","in":"path","name":"version_id","required":true,"schema":{"type":"number","example":12345}},{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}}],"requestBody":{"required":false,"content":{"application/vnd.vimeo.video.version+json":{"schema":{"type":"object","properties":{"is_current":{"description":"Whether the video version is active.","example":true,"type":"boolean"}}}}}},"responses":{"200":{"description":"Standard request.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/video-version"}}}},"401":{"description":"Error code 8003: The user credentials are invalid.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/error"}}}},"404":{"description":"* No such video exists.\n* Error code 2205: A parameter is invalid.\n* Error code 3200: The authenticated user can't access the versions of this video.","content":{"application/vnd.vimeo.video.version+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}},"security":[{"oauth2":["edit"]}]}},"/videos/{video_id}/videos":{"get":{"summary":"Get all the related videos of a video","description":"This method returns every related video of a particular video.","operationId":"get_related_videos","tags":["Videos\\Recommendations"],"parameters":[{"description":"The ID of the video.","in":"path","name":"video_id","required":true,"schema":{"type":"number","example":258684937}},{"description":"The attribute by which to filter the results.\n\nOption descriptions:\n * `related` - Return related videos.\n","in":"query","name":"filter","required":false,"schema":{"type":"string","enum":["related"]}},{"description":"The page number of the results to show.","in":"query","name":"page","required":false,"schema":{"type":"number","example":1}},{"description":"The number of items to show on each page of results, up to a maximum of 100.","in":"query","name":"per_page","required":false,"schema":{"type":"number","example":10}}],"responses":{"200":{"description":"The related videos were returned.","content":{"application/vnd.vimeo.video+json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/video"}}}}},"400":{"description":"The value of **filter** isn't `related`.","content":{"application/vnd.vimeo.video+json":{"schema":{"$ref":"#/components/schemas/legacy-error"}}}}}}}},"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","bearerFormat":"bearer"},"oauth2":{"type":"oauth2","flows":{"authorizationCode":{"authorizationUrl":"/oauth/authorize","tokenUrl":"/oauth/access_token","scopes":{"create":"Create new albums, channels, and so on","delete":"Delete videos, albums, channels, and so on","edit":"Edit existing videos, albums, channels, and so on","email":"Access to email addresses","interact":"Interact with Vimeo resources on a member's behalf, such as liking a video or following another member","private":"Access private member data","promo_codes":"Add, remove, and review Vimeo On Demand promotions","public":"Access public member data","purchase":"Purchase content","purchased":"Access a member's Vimeo On Demand purchase history","stats":"Access video stats","upload":"Upload videos","video_files":"Access video files belonging to members with a PRO subscription or higher"}},"clientCredentials":{"tokenUrl":"/oauth/authorize/client","scopes":{"create":"Create new albums, channels, and so on","delete":"Delete videos, albums, channels, and so on","edit":"Edit existing videos, albums, channels, and so on","email":"Access to email addresses","interact":"Interact with Vimeo resources on a member's behalf, such as liking a video or following another member","private":"Access private member data","promo_codes":"Add, remove, and review Vimeo On Demand promotions","public":"Access public member data","purchase":"Purchase content","purchased":"Access a member's Vimeo On Demand purchase history","stats":"Access video stats","upload":"Upload videos","video_files":"Access video files belonging to members with a PRO subscription or higher"}}}}},"schemas":{"activity-3-1":{"title":"Activity 3.1","properties":{"category":{"allOf":[{"$ref":"#/components/schemas/category"}],"description":"The category associated with the event. This field is present only when the activity type is `category`."},"channel":{"allOf":[{"$ref":"#/components/schemas/channel"}],"description":"The channel associated with the event. This field is present only when the activity type is `channel`."},"clip":{"allOf":[{"$ref":"#/components/schemas/video"}],"description":"The video associated with the activity."},"group":{"allOf":[{"$ref":"#/components/schemas/group"}],"description":"The group associated with the event. This field is present only when the activity type is `group`."},"metadata":{"description":"Information about the activity's metadata.","properties":{"connections":{"description":"A list of resource URIs related to the activity.","properties":{"related":{"description":"The activity's related content.","nullable":true,"properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/activities?offset=20","type":"string"}},"required":["options","uri"],"type":"object"}},"required":["related"],"type":"object"}},"required":["connections"],"type":"object"},"tag":{"allOf":[{"$ref":"#/components/schemas/tag"}],"description":"The tag associated with the event. This field is present only when the activity type is `tag`."},"time":{"description":"The time that the event occurred.","example":"2017-05-17T17:46:09+00:00","type":"string"},"type":{"description":"The activity type.\n\nOption descriptions:\n * `appearance` - The activity is an appearance action.\n * `category` - The activity is a category action.\n * `channel` - The activity is a channel action.\n * `facebook_feed` - The activity is a Facebook feed action.\n * `group` - The activity is a group action.\n * `like` - The activity is a like action.\n * `ondemand` - The activity is a Vimeo On Demand action.\n * `share` - The activity is a share action.\n * `tag` - The activity is a tag action.\n * `twitter_timeline` - The activity is a Twitter timeline action.\n * `upload` - The activity is an upload action.\n","enum":["appearance","category","channel","facebook_feed","group","like","ondemand","share","tag","twitter_timeline","upload"],"example":"appearance","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The user associated with the event. This field is present only when the activity type is `like`, `appearance`, or `share`."}},"required":["clip","metadata","time","type"],"type":"object"},"album":{"title":"Album","properties":{"allow_continuous_play":{"description":"Whether the showcase permits continuous play.","example":true,"type":"boolean"},"allow_downloads":{"description":"Whether the showcase permits downloads.","example":true,"type":"boolean"},"allow_share":{"description":"Whether the showcase permits sharing.","example":true,"type":"boolean"},"autoplay":{"description":"Whether to start playback of the next video in the showcase's embedded playlist immediately after the previous video finishes.","example":true,"type":"boolean"},"brand_color":{"description":"The hexadecimal code for the color of the player buttons and showcase controls.","example":"ff66ee","nullable":true,"type":"string"},"created_time":{"description":"The time in ISO 8601 format when the showcase was created.","example":"2015-12-17T21:32:44+00:00","type":"string"},"custom_logo":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The custom logo of the showcase.","nullable":true},"description":{"description":"A brief description of the showcase's content.","example":"Vimeo holiday videos!","nullable":true,"type":"string"},"domain":{"description":"The custom domain of the showcase.","example":"mycustomdomain.com","nullable":true,"type":"string"},"domain_certificate_state":{"description":"The state of the SSL certificate that is associated with the showcase's domain.\n\nOption descriptions:\n * `null` - There is no associated HTTPS domain with this showcase.\n * `0` - The new certificate has yet to be processed.\n * `1` - The new certificate is being processed in the queue.\n * `2` - The certificate is being processed for renewal in the queue.\n * `3` - The new certificate has failed to be issued in the queue.\n * `4` - The certificate has failed to be renewed in the queue.\n * `5` - The certificate has been successfully issued.\n * `6` - The certificate has been successfully renewed.\n * `7` - The certificate has failed in the polling flow.\n * `8` - The certificate has failed to be renewed in the polling flow.\n","enum":["null",0,1,2,3,4,5,6,7,8],"example":"null","type":"string"},"duration":{"description":"The total duration in seconds of all the videos in the showcase.","example":1163,"type":"number"},"embed":{"description":"Embed data for the showcase.","properties":{"html":{"description":"The responsive HTML code to embed the showcase's playlist on a website. This field appears only when the showcase has embeddable videos.","nullable":true,"type":"string"}},"required":["html"],"type":"object"},"embed_brand_color":{"description":"Whether to show the showcase's custom brand color in the player of the showcase's embedded playlist.","example":true,"nullable":true,"type":"boolean"},"embed_custom_logo":{"description":"Whether to show the showcase's custom logo in the player of the showcase's embedded playlist.","example":true,"nullable":true,"type":"boolean"},"hide_nav":{"description":"Whether to hide Vimeo navigation when displaying the showcase.","example":true,"type":"boolean"},"hide_upcoming":{"description":"Whether to include the upcoming live event in the showcase.","example":false,"type":"boolean"},"hide_vimeo_logo":{"description":"Whether to hide the Vimeo logo in the player of the showcase's embedded playlist.","example":true,"nullable":true,"type":"boolean"},"layout":{"description":"The type of layout for presenting the showcase.\n\nOption descriptions:\n * `grid` - The showcase videos appear in a grid.\n * `player` - The showcase videos appear in the player.\n","enum":["grid","player"],"example":"grid","type":"string"},"link":{"description":"The URL of the showcase.","example":"https://vimeo.com/showcase/Vimeo Holiday Videos!","type":"string"},"loop":{"description":"Whether automatic playback restarts at the top of the showcase's embedded playlist after reaching the end of the last video in the playlist.","example":true,"type":"boolean"},"metadata":{"description":"Metadata about the showcase.","properties":{"connections":{"description":"Information about showcase connections.","properties":{"available_videos":{"description":"Information about the authenticated user's videos that can be added to or removed from this showcase. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection. This data requires a bearer token with the `private` scope.","example":14,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/albums/3706071/available_videos","type":"string"}},"required":["options","total","uri"],"type":"object"},"videos":{"description":"Information about the videos that belong to the showcase.","properties":{"options":{"description":"An array of the HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":6,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/albums/3706071/videos","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["available_videos","videos"],"type":"object"},"interactions":{"description":"A list of resource URIs related to the showcase.","nullable":true,"properties":{"add_custom_thumbnails":{"description":"An action indicating that the authenticated user is an administrator of the showcase and may therefore add custom thumbnails. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/users/123456/albums/654321/custom_thumbnails","type":"string"}},"required":["options","uri"],"type":"object"},"add_live_events":{"description":"An action indicating that the authenticated user is an administrator of the showcase and may therefore add live events. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/users/123456/albums/654321/live_events","type":"string"}},"required":["options","uri"],"type":"object"},"add_logos":{"description":"An action indicating that the authenticated user is an administrator of the showcase and may therefore add custom logos. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/users/123456/albums/654321/logos","type":"string"}},"required":["options","uri"],"type":"object"},"add_to":{"description":"Information about adding or removing a video from the showcase. This data requires a bearer token with the `private` scope.","nullable":true,"properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/albums/1234/videos/5678","type":"string"}},"required":["options","uri"],"type":"object"},"add_videos":{"description":"An action indicating that the authenticated user is an administrator of the showcase and may therefore add videos. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/users/123456/albums/654321/videos","type":"string"}},"required":["options","uri"],"type":"object"}},"required":["add_custom_thumbnails","add_live_events","add_logos","add_to","add_videos"],"type":"object"}},"required":["connections","interactions"],"type":"object"},"modified_time":{"description":"The time in ISO 8601 format when the showcase was last modified.","example":"2018-02-06T21:24:17+00:00","type":"string"},"name":{"description":"The display name of the showcase.","example":"Vimeo Holiday Videos!","type":"string"},"pictures":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The active image of the showcase. This field defaults to the thumbnail of the last video added to the showcase."},"privacy":{"description":"The privacy settings of the showcase.","properties":{"password":{"description":"The showcase's password. This field appears only when **privacy.view** is `password`.","example":"hunter1","type":"string"},"view":{"description":"The access level of the showcase.\n\nOption descriptions:\n * `anybody` - Anyone can access the showcase.\n * `embed_only` - The showcase doesn't appear on Vimeo, but the owner can embed it on other sites.\n * `nobody` - No one can access the showacse, including the owner.\n * `password` - Only those with the password can access the showcase.\n * `team` - Only the owner and members of the owner's team can access the showcase.\n","enum":["anybody","embed_only","nobody","password","team"],"example":"anybody","type":"string"}},"required":["view"],"type":"object"},"resource_key":{"description":"The resource key of the showcase.","example":"e5595241643259c658ed6c85ca82985a6341edc7","type":"string"},"review_mode":{"description":"Whether showcase videos use the review mode URL.","example":true,"type":"boolean"},"seo_allow_indexed":{"description":"Whether search engines can index the showcase.","example":false,"type":"boolean"},"seo_description":{"description":"The SEO description of the showcase.","nullable":true,"type":"string"},"seo_keywords":{"description":"The SEO keywords of the showcase.","items":{"type":"string"},"type":"array"},"seo_title":{"description":"The SEO title of the showcase.","nullable":true,"type":"string"},"share_link":{"description":"The URL for sharing the showcase.","type":"string"},"sort":{"description":"The sort order of the showcase.\n\nOption descriptions:\n * `added_first` - Sort the showcase videos in order of those most recently added.\n * `added_last` - Sort the showcase videos in order of those least recently added.\n * `alphabetical` - Sort the showcase videos alphabetically.\n * `arranged` - Sort the showcase videos according to their custom arrangement.\n * `comments` - Sort the showcase videos by number of comments.\n * `likes` - Sort the showcase videos by number of likes.\n * `newest` - Sort the showcase videos in order of creation date with the newest first.\n * `oldest` - Sort the showcase videos in order of creation date with the oldest first.\n * `plays` - Sort the showcase videos by number of plays.\n","enum":["added_first","added_last","alphabetical","arranged","comments","likes","newest","oldest","plays"],"example":"added_first","type":"string"},"theme":{"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","enum":["dark","standard"],"example":"dark","type":"string"},"uri":{"description":"The URI of the showcase.","example":"/users/152184/albums/3706071","type":"string"},"url":{"description":"The custom Vimeo URL of the showcase.","example":"my-custom-url","nullable":true,"type":"string"},"use_custom_domain":{"description":"Whether the showcase uses a custom domain.","example":false,"type":"boolean"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The owner of the showcase."},"web_brand_color":{"description":"Whether to use the showcase's brand color in the web layout.","example":true,"type":"boolean"},"web_custom_logo":{"description":"Whether to use the showcase's custom logo in the web layout.","example":true,"type":"boolean"}},"required":["allow_continuous_play","allow_downloads","allow_share","autoplay","brand_color","created_time","custom_logo","description","domain","domain_certificate_state","duration","embed","embed_brand_color","embed_custom_logo","hide_nav","hide_upcoming","hide_vimeo_logo","layout","link","loop","metadata","modified_time","name","pictures","privacy","resource_key","review_mode","seo_allow_indexed","seo_description","seo_keywords","seo_title","share_link","sort","theme","uri","url","use_custom_domain","user","web_brand_color","web_custom_logo"],"type":"object"},"api-app":{"title":"API App","properties":{"name":{"description":"The name of the API app.","example":"Vimeo Android","type":"string"},"uri":{"description":"The canonical URI of the API app.","example":"/apps/12345","type":"string"}},"required":["name","uri"],"type":"object"},"auth":{"title":"Auth","properties":{"access_token":{"description":"The access token string.","example":"01019a4a62aec63db077317ab7bb429db75652401e","type":"string"},"app":{"allOf":[{"$ref":"#/components/schemas/api-app"}],"description":"The API application associated with the token."},"expires_on":{"description":"The token's expiration date.","example":"1495048954","type":"string"},"refresh_token":{"description":"The refresh token string.","example":"3d3bc8a9cb7debfd01b270e419b2d265983362f9","type":"string"},"scope":{"description":"The scope or scopes that the token supports.","example":"private create edit upload public","type":"string"},"token_type":{"description":"The token type.\n\nOption descriptions:\n * `bearer` - The token is of the `bearer` type.\n","enum":["bearer"],"example":"bearer","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The user associated with the token."}},"required":["access_token","app","scope","token_type"],"type":"object"},"auth-error":{"title":"Auth Error","properties":{"error":{"description":"The name of the error.","example":"server_error","type":"string"},"error_description":{"description":"The description of the error.","example":"An error has occurred on Vimeo's servers. Please try again.","type":"string"}},"required":["error","error_description"],"type":"object"},"category":{"title":"Category","properties":{"icon":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The active icon for the category."},"is_deprecated":{"description":"Whether the category is deprecated and should not be used for new categorization.","example":false,"type":"boolean"},"last_video_featured_time":{"description":"The most recent time in ISO 8601 format when the video was featured.","example":"2017-05-17T17:46:09+00:00","type":"string"},"link":{"description":"The URL to access the category in a browser.","example":"https://vimeo.com/categories/animation","type":"string"},"metadata":{"description":"Metadata about the category.","properties":{"connections":{"description":"A collection of information that is connected to this resource.","properties":{"channels":{"description":"Information about the channels related to this category.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of channels on this connection.","example":90,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/categories/animation/channels","type":"string"}},"required":["options","total","uri"],"type":"object"},"groups":{"description":"Information about the groups related to this category.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of groups on this connection.","example":15,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/categories/animation/groups","type":"string"}},"required":["options","total","uri"],"type":"object"},"users":{"description":"Information about the users related to this category.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of users on this connection.","example":140,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/categories/animation/videos","type":"string"}},"required":["options","total","uri"],"type":"object"},"videos":{"description":"Information about the videos related to this category.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":960,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/categories/animation/videos","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["channels","groups","users","videos"],"type":"object"},"interactions":{"description":"The permissible actions related to the category.","properties":{"follow":{"description":"An action indicating if the authenticated user has followed the category.","properties":{"added":{"description":"Whether the authenticated user has followed the category.","example":true,"type":"boolean"},"added_time":{"description":"The time in ISO 8601 format when the user followed the category, or the null value if the user hasn't followed the category.","example":"2017-05-17T17:46:09+00:00","nullable":true,"type":"string"},"uri":{"description":"The URI for following or unfollowing the category: PUT to this URI to follow the category, or DELETE to this URI to unfollow the category.","example":"/users/152184/categories/animation","type":"string"}},"required":["added","added_time","uri"],"type":"object"}},"required":["follow"],"type":"object"}},"required":["connections","interactions"],"type":"object"},"name":{"description":"The display name that identifies the category.","example":"Animation","type":"string"},"parent":{"description":"The container of the category's parent category, if the current category is a subcategory.","nullable":true,"properties":{"link":{"description":"The URL to access the parent category in a browser.","example":"https://vimeo.com/categories/animation","type":"string"},"name":{"description":"The display name that identifies the parent category.","example":"Animation","type":"string"},"uri":{"description":"The unique identifier to access the parent of the category resource.","example":"/categories/animation","type":"string"}},"required":["link","name","uri"],"type":"object"},"pictures":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The active picture for this category. The default shows vertical color bars."},"resource_key":{"description":"The resource key of the category.","example":"e5595241643259c658ed6c85ca82985a6341edc7","type":"string"},"subcategories":{"description":"All the subcategories that belong to the category, if the current category is a top-level parent.","items":{"type":"object","properties":{"link":{"description":"The URL to access the subcategory in a browser.","example":"https://vimeo.com/categories/animation/2d/videos","type":"string"},"name":{"description":"The display name that identifies the subcategory.","example":"2D","type":"string"},"uri":{"description":"The unique identifier to access the subcategory. resource.","example":"/categories/animation/subcategories/2d","type":"string"}},"required":["link","name","uri"]},"type":"array"},"top_level":{"description":"Whether the category isn't a subcategory of another category.","example":true,"type":"boolean"},"uri":{"description":"The unique identifier to access the category resource.","example":"/categories/animation","type":"string"}},"required":["is_deprecated","last_video_featured_time","link","metadata","name","parent","pictures","resource_key","top_level","uri"],"type":"object"},"channel":{"title":"Channel","properties":{"categories":{"description":"The categories to which the channel belongs as specified by the channel moderators.","items":{"$ref":"#/components/schemas/category"},"type":"array"},"created_time":{"description":"The time in ISO 8601 format when the channel was created.","example":"2007-10-23T17:00:43+00:00","type":"string"},"description":{"description":"A brief explanation of the channel's content.","example":"We really love videos, and these are the videos we really, really love.","nullable":true,"type":"string"},"header":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The banner that appears by default at the top of the channel page."},"link":{"description":"The URL to access the channel in a browser.","example":"https://vimeo.com/channels/staffpicks","type":"string"},"metadata":{"description":"Metadata about the channel.","properties":{"connections":{"description":"A collection of information that is connected to this resource.","properties":{"privacy_users":{"description":"Information provided to channel moderators about which users they have specifically permitted to access this private channel. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of users on this connection. This data requires a bearer token with the `private` scope.","example":36,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/channels/927/privacy/users","type":"string"}},"required":["options","total","uri"],"type":"object"},"users":{"description":"Information about the users following or moderating this channel.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of users on this connection.","example":794634,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/channels/927/users","type":"string"}},"required":["options","total","uri"],"type":"object"},"videos":{"description":"Information about the videos that belong to this channel.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":12448,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/channels/927/videos","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["privacy_users","users","videos"],"type":"object"},"interactions":{"description":"A list of resource URIs related to the channel.","nullable":true,"properties":{"add_moderators":{"description":"An action indicating that the authenticated user is the owner of the channel and may therefore add other users as channel moderators. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/channels/1234/moderators","type":"string"}},"required":["options","uri"],"type":"object"},"add_to":{"description":"When a channel appears in the context of adding or removing a video from it (`/videos/{video_id}/available_channels`), include information about adding or removing the video. This data requires a bearer token with the `private` scope.","nullable":true,"properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/channels/1234/videos/5678","type":"string"}},"required":["options","uri"],"type":"object"},"follow":{"description":"An action indicating if the authenticated user has followed this channel. This data requires a bearer token with the `private` scope.","properties":{"added":{"description":"Whether the authenticated user has followed this channel. This data requires a bearer token with the `private` scope.","example":true,"type":"boolean"},"added_time":{"description":"The time in ISO 8601 format that the user followed this channel, or the null value if the user hasn't followed the channel. This data requires a bearer token with the `private` scope.","example":"2017-05-22T17:50:11+00:00","nullable":true,"type":"string"},"type":{"description":"Whether the authenticated user is a moderator or subscriber. This data requires a bearer token with the `private` scope.\n\nOption descriptions:\n * `moderator` - The authenticated user is a moderator.\n * `subscriber` - The authenticated user is a subscriber.\n","enum":["moderator","subscriber"],"example":"moderator","nullable":true,"type":"string"},"uri":{"description":"The URI for following or unfollowing this channel. PUT to this URI to follow the channel, or DELETE to this URI to unfollow the channel. This data requires a bearer token with the `private` scope.","example":"/users/1234/channels/927","type":"string"}},"required":["added","added_time","type","uri"],"type":"object"},"moderate_videos":{"description":"An action indicating that the authenticated user is a moderator of the channel and may therefore add or remove videos from the channel. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods allowed on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/channels/1234/videos","type":"string"}},"required":["options","uri"],"type":"object"}},"required":["add_moderators","add_to","follow","moderate_videos"],"type":"object"}},"required":["connections","interactions"],"type":"object"},"modified_time":{"description":"The time in ISO 8601 format when the channel was last modified.","example":"2018-03-21T22:52:29+00:00","type":"string"},"name":{"description":"The display name that identifies the channel.","example":"Vimeo Staff Picks","type":"string"},"pictures":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The active image for the channel. The default is the thumbnail of the last video added to the channel."},"privacy":{"description":"The privacy settings of the channel.","properties":{"view":{"description":"The privacy setting of the channel.\n\nOption descriptions:\n * `anybody` - Anyone can access the channel.\n * `moderators` - Only moderators can access the channel.\n * `users` - Only registered users can access the channel.\n","enum":["anybody","moderators","users"],"example":"anybody","type":"string"}},"required":["view"],"type":"object"},"resource_key":{"description":"The channel resource key.","example":"e5595241643259c658ed6c85ca82985a6341edc7","type":"string"},"tags":{"description":"An array of all tags assigned to the channel.","items":{"$ref":"#/components/schemas/tag"},"type":"array"},"uri":{"description":"The unique identifier to access the channel resource.","example":"/channels/927","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The Vimeo user who owns the channel."}},"required":["categories","created_time","description","header","link","metadata","modified_time","name","pictures","privacy","resource_key","tags","uri","user"],"type":"object"},"comment":{"title":"Comment","properties":{"created_on":{"description":"The time in ISO 8601 format when the comment was posted.","example":"2018-03-05T21:04:47+00:00","type":"string"},"link":{"description":"The permalink to the comment.","example":"https://vimeo.com/258684937#comment_12345","type":"string"},"metadata":{"properties":{"connections":{"properties":{"replies":{"description":"Information about the replies to the comment.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of replies on this connection.","example":42,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937/comments/12345/replies","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["replies"],"type":"object"}},"required":["connections"],"type":"object"},"resource_key":{"description":"The comment's resource key string.","example":"bac1033deba2310ebba2caec33c23e4beea67aba","type":"string"},"text":{"description":"The content of the comment.","example":"I love this!","type":"string"},"type":{"description":"The Vimeo content to which the comment relates.\n\nOption descriptions:\n * `video` - The comment is about a video.\n","enum":["video"],"example":"video","type":"string"},"uri":{"description":"The unique identifier to access the comment resource.","example":"/videos/258684937/comments/12345","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The user who posted the comment.","nullable":true}},"required":["created_on","link","metadata","resource_key","text","type","uri","user"],"type":"object"},"content-rating":{"title":"Content Rating","properties":{"code":{"description":"The reason for the content rating.\n\nOption descriptions:\n * `drugs` - Drug or alcohol use.\n * `language` - Profanity or sexually suggestive content.\n * `nudity` - Nudity.\n * `safe` - Suitable for all audiences.\n * `unrated` - No rating.\n * `violence` - Violent or graphic content.\n","enum":["drugs","language","nudity","safe","unrated","violence"],"example":"violence","type":"string"},"name":{"description":"The description of the content rating.","example":"Violence","type":"string"},"uri":{"description":"The canonical relative URI of the content rating.","example":"/contentrating/violence","nullable":true,"type":"string"}},"required":["code","name","uri"],"type":"object"},"creative-commons":{"title":"Creative Commons","properties":{"code":{"description":"The type of Creative Commons license.\n\nOption descriptions:\n * `by` - Attribution.\n * `by-nc` - Attribution Non-Commercial.\n * `by-nc-nd` - Attribution Non-Commercial No Derivatives.\n * `by-nc-sa` - Attribution Non-Commercial Share Alike.\n * `by-nd` - Attribution No Derivatives.\n * `by-sa` - Attribution Share Alike.\n * `cc0` - Public Domain Dedication.\n","enum":["by","by-nc","by-nc-nd","by-nc-sa","by-nd","by-sa","cc0"],"example":"by-sa","type":"string"},"name":{"description":"The description of the Creative Commons license.","example":"Attribution Share Alike","type":"string"},"uri":{"description":"The canonical relative URI of the Creative Commons license.","example":"/creativecommons/by-sa","nullable":true,"type":"string"}},"required":["code","name","uri"],"type":"object"},"credit":{"title":"Credit","properties":{"name":{"description":"The name of the person credited.","example":"Sam Doe","type":"string"},"role":{"description":"The character that the person portrayed, or the job that the person performed.","example":"Themselves","type":"string"},"uri":{"description":"The unique identifier to access the credit resource.","example":"/videos/258684937/credits/1234","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The Vimeo user associated with the credit."},"video":{"allOf":[{"$ref":"#/components/schemas/video"}],"description":"The video associated with the credit."}},"required":["name","role","uri"],"type":"object"},"domain":{"title":"Domain","properties":{"allow_hd":{"description":"Whether to permit HD embeds on this domain.","example":true,"type":"boolean"},"domain":{"description":"The domain name.","example":"example.com","type":"string"},"uri":{"description":"The URI of the domain.","example":"/videos/258684937/privacy/domains/example.com","type":"string"}},"required":["allow_hd","domain","uri"],"type":"object"},"embed-settings":{"title":"Embed Settings","properties":{"buttons":{"description":"A collection of information about the buttons that appear on the interface of the embeddable player.","properties":{"embed":{"description":"Whether the embed button appears in the embeddable player.","example":true,"type":"boolean"},"fullscreen":{"description":"Whether the fullscreen button appears in the embeddable player.","example":true,"type":"boolean"},"hd":{"description":"Whether the HD button appears in the embeddable player.","example":true,"type":"boolean"},"like":{"description":"Whether the like button appears in the embeddable player.","example":true,"type":"boolean"},"scaling":{"description":"Whether the scaling button appears in the embeddable player.","example":true,"type":"boolean"},"share":{"description":"Whether the share button appears in the embeddable player.","example":true,"type":"boolean"},"watchlater":{"description":"Whether the watch later button appears in the embeddable player.","example":true,"type":"boolean"}},"required":["embed","fullscreen","hd","like","scaling","share","watchlater"],"type":"object"},"color":{"description":"The primary player color, which controls the color of the progress bar, buttons, and more.","example":"#0a0808","type":"string"},"logos":{"description":"A collection of information about the logo in the corner of the embeddable player.","properties":{"custom":{"description":"A collection of information relating to custom logos in the embeddable player.","properties":{"active":{"description":"Whether the custom logo appears in the embeddable player.","example":true,"type":"boolean"},"link":{"description":"The URL that loads upon clicking the custom logo.","example":"http://example.com","nullable":true,"type":"string"},"sticky":{"description":"Whether the custom logo appears even when the player interface is hidden.","example":true,"type":"boolean"},"url":{"description":"The URL of the selected custom logo.","example":"http://example.com","nullable":true,"type":"string"}},"required":["active","link","sticky","url"],"type":"object"},"vimeo":{"description":"Whether the Vimeo logo appears in the embeddable player.","example":true,"type":"boolean"}},"required":["custom","vimeo"],"type":"object"},"playbar":{"description":"Whether the playbar appears in the embeddable player.","example":true,"type":"boolean"},"speed":{"description":"Whether the speed controls appear in the embeddable player.","example":true,"type":"boolean"},"title":{"description":"A collection of information about the embeddable player's title bar.","properties":{"name":{"description":"How the embeddable player handles the video title.\n\nOption descriptions:\n * `hide` - The title is hidden.\n * `show` - The title is shown.\n","enum":["hide","show","user"],"example":"hide","type":"string"},"owner":{"description":"How the embeddable player handles the video owner's information.\n\nOption descriptions:\n * `hide` - The owner's information is hidden.\n * `show` - The owner's information is shown.\n","enum":["hide","show","user"],"example":"hide","type":"string"},"portrait":{"description":"How the embeddable player handles the video owner's portrait.\n\nOption descriptions:\n * `hide` - The owner's portrait is hidden\n * `show` - The owner's portrait is shown.\n","enum":["hide","show","user"],"example":"hide","type":"string"}},"required":["name","owner","portrait"],"type":"object"},"uri":{"description":"The URI of the embed preset.","example":"/videos/258684937/presets/12345","type":"string"},"volume":{"description":"Whether the volume controls appear in the embeddable player.","example":true,"type":"boolean"}},"required":["buttons","color","logos","playbar","speed","title","volume"],"type":"object"},"endpoint":{"title":"Endpoint","properties":{"methods":{"description":"All HTTP methods permitted on this endpoint.","items":{"type":"string"},"type":"array"},"path":{"description":"The path section of the URL, which, when appended to the API host `https:///api.vimeo.com`, builds a full API endpoint.","example":"/me","type":"string"}},"required":["methods","path"],"type":"object"},"error":{"title":"Error","properties":{"developer_message":{"description":"The error message that technical users receive.","example":"The specified resource does not exist.","type":"string"},"error":{"description":"The error message that general users receive.","example":"Something strange occurred. Please try again.","type":"string"},"error_code":{"description":"The error code.","example":5000,"type":"number"},"link":{"description":"A link to more information about the error.","type":"string"}},"required":["developer_message","error","error_code","link"],"type":"object"},"group":{"title":"Group","properties":{"created_time":{"description":"The time in ISO 8601 format when the group was created.","example":"2008-07-05T14:52:43+00:00","type":"string"},"description":{"description":"The group's description.","example":"Want to participate in our weekly Challenges? Join the Group to receive messages and new Challenges!","nullable":true,"type":"string"},"link":{"description":"The link to the group.","example":"https://vimeo.com/groups/weekendchallenge","type":"string"},"metadata":{"description":"Metadata about the group.","properties":{"connections":{"description":"A collection of information that is connected to this resource.","properties":{"users":{"description":"Information about the members or moderators of the group.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of users on this connection.","example":25798,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/groups/1108/users","type":"string"}},"required":["options","total","uri"],"type":"object"},"videos":{"description":"Information about the videos contained within the group.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":7252,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/groups/1108/videos","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["users","videos"],"type":"object"},"interactions":{"description":"User actions that have involved the group. This data requires a bearer token with the `private` scope.","properties":{"join":{"description":"An action indicating that someone has joined the group. This data requires a bearer token with the `private` scope.","properties":{"added":{"description":"Whether the authenticated user has followed the group. This data requires a bearer token with the `private` scope.","example":true,"type":"boolean"},"added_time":{"description":"The time in ISO 8601 format when the authenticated user joined the group. This data requires a bearer token with the `private` scope.","nullable":true,"type":"string"},"title":{"description":"The authenticated user's title. If not applicable, this field takes the null value. This data requires a bearer token with the `private` scope.","example":"Vimeo Staff","nullable":true,"type":"string"},"type":{"description":"Whether the authenticated user is a moderator or subscriber. This data requires a bearer token with the `private` scope.\n\nOption descriptions:\n * `member` - The authenticated user is a member.\n * `moderator` - The authenticated user is a moderator.\n","enum":["member","moderator"],"example":"member","nullable":true,"type":"string"},"uri":{"description":"The URI for following the group. PUT to this URI to follow the group, or DELETE to this URI to unfollow the group. This data requires a bearer token with the `private` scope.","example":"/users/152184/groups/1108","type":"string"}},"required":["added","added_time","title","type","uri"],"type":"object"}},"required":["join"],"type":"object"}},"required":["connections","interactions"],"type":"object"},"modified_time":{"description":"The time in ISO 8601 format when the group was last modified.","example":"2018-09-16T15:41:45+00:00","type":"string"},"name":{"description":"The group's display name.","example":"Vimeo Weekend Challenge","type":"string"},"pictures":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The active picture for the group."},"privacy":{"description":"The group's privacy settings.","properties":{"comment":{"description":"Who can comment on the group.\n\nOption descriptions:\n * `all` - Anyone can comment on the group.\n * `members` - Only group members can comment on the group.\n","enum":["all","members"],"example":"all","type":"string"},"invite":{"description":"Who can invite new members to the group.\n\nOption descriptions:\n * `all` - Anyone can invite new members.\n * `members` - Only group members can invite new members.\n","enum":["all","members"],"example":"all","type":"string"},"join":{"description":"Who can join the group.\n\nOption descriptions:\n * `anybody` - Anyone can join the group.\n * `members` - Only people with a Vimeo account can join the group.\n","enum":["anybody","members"],"example":"anybody","type":"string"},"videos":{"description":"Who can add videos to the group.\n\nOption descriptions:\n * `all` - Anyone can add videos to the group.\n * `members` - Only group members can add videos to the group.\n","enum":["all","members"],"example":"all","type":"string"},"view":{"description":"Who can access the group.\n\nOption descriptions:\n * `anybody` - Anyone can access the group.\n * `members` - Only group members can access the group.\n","enum":["anybody","members"],"example":"anybody","type":"string"}},"required":["comment","invite","join","videos","view"],"type":"object"},"resource_key":{"description":"The resource key of the group.","example":"dc724af18fbdd4e59189f5fe768a5f8311527050","type":"string"},"uri":{"description":"The canonical relative URI of the group.","example":"/groups/1108","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The owner of the group.","nullable":true}},"required":["created_time","description","link","metadata","modified_time","name","pictures","privacy","resource_key","uri"],"type":"object"},"language":{"title":"Language","properties":{"code":{"description":"The standard ISO 639-1 code for the language.","example":"en-US","type":"string"},"name":{"description":"The name of the language.","example":"English (United States)","type":"string"}},"required":["code","name"],"type":"object"},"legacy-error":{"title":"Legacy Error","properties":{"error":{"description":"The error message.","example":"Something strange occurred. Please try again.","type":"string"}},"required":["error"],"type":"object"},"live-event-destination":{"title":"Live Event Destination","properties":{"display_name":{"description":"The name of destination targer like page, or profile name etc.","example":"Test page","type":"string"},"id":{"description":"The id of event destination","example":1234,"type":"number"},"is_enabled":{"description":"Flag which telling is destination enabled or not","example":true,"type":"boolean"},"live_clip_id":{"description":"The id of live clip","example":123456,"type":"number"},"privacy":{"description":"The privacy of destination","example":"public","nullable":true,"type":"string"},"provider_broadcast_id":{"description":"The broadcast id of destination service","example":"9fe254b7d55e7542da9fbd46a5deb947","nullable":true,"type":"string"},"provider_destination_id":{"description":"The destination id of destination service","example":"fm4m34gm5oirbkjfkfnkkdhgfi45v3df34oz","nullable":true,"type":"string"},"provider_user_id":{"description":"The user id of destination service","example":"44fdb916-a558-ef67-39cf-a6378de4995a","nullable":true,"type":"string"},"service_name":{"description":"The name of destination service","example":"facebook","type":"string"},"stream_key":{"description":"The stream key for the simulcast destination.","example":"b624fa1e-23d8-4d27-90f9-fe7d0ad700ed","nullable":true,"type":"string"},"stream_url":{"description":"Stream url for destination","example":"https://example.com","nullable":true,"type":"string"},"type":{"description":"The type of destination","example":"page","nullable":true,"type":"string"},"user_id":{"description":"The id of owner","example":123456,"type":"number"}},"required":["display_name","id","is_enabled","live_clip_id","privacy","provider_broadcast_id","provider_destination_id","provider_user_id","service_name","stream_key","stream_url","type","user_id"],"type":"object"},"location":{"title":"Location","properties":{"city":{"description":"The authenticated user's city.","example":"New York City","nullable":true,"type":"string"},"country":{"description":"The authenticated user's country.","example":"United States","nullable":true,"type":"string"},"country_iso_code":{"description":"The ISO code of the authenticated user's country.","example":"US","type":"string"},"formatted_address":{"description":"The authenticated user's formatted address string.","example":"123 Street, NY","type":"string"},"latitude":{"description":"The authenticated user's latitude.","example":20.2960586,"type":"number"},"longitude":{"description":"The authenticated user's longitude.","example":185.8245392,"type":"number"},"neighborhood":{"description":"The authenticated user's neighborhood.","example":"Brooklyn","nullable":true,"type":"string"},"state":{"description":"The authenticated user's state.","example":"New York","nullable":true,"type":"string"},"state_iso_code":{"description":"The ISO code of the authenticated user's state.","example":"NY","nullable":true,"type":"string"},"sub_locality":{"description":"The authenticated user's sub-locality.","example":"Brooklyn","nullable":true,"type":"string"}},"required":["city","country","country_iso_code","formatted_address","latitude","longitude","neighborhood","state","state_iso_code","sub_locality"],"type":"object"},"on-demand-genre":{"title":"On Demand Genre","properties":{"canonical":{"description":"The canonical name or URL slug of the genre.","example":"horror","type":"string"},"interactions":{"properties":{"page":{"description":"Interactions for On Demand pages that belong to the genre.","properties":{"added":{"description":"Whether the On Demand genre was added.","example":true,"type":"boolean"},"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The URI to access the On Demand page.","example":"/ondemand/genres/horror/pages/12345","type":"string"}},"required":["added","options","uri"],"type":"object"}},"required":["page"],"type":"object"},"link":{"description":"The Vimeo URL for the genre.","example":"http://vimeo.com/ondemand/browse/horror","type":"string"},"metadata":{"properties":{"connections":{"description":"A collection of information connected to this resource.","properties":{"pages":{"description":"Information about the On Demand pages related to this group.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/genres/horror/pages","type":"string"}},"required":["options","uri"],"type":"object"}},"required":["pages"],"type":"object"}},"required":["connections"],"type":"object"},"name":{"description":"The descriptive name of the genre.","example":"Horror","type":"string"},"uri":{"description":"The relative URI of the On Demand genre.","example":"/ondemand/genres/horror","type":"string"}},"required":["canonical","interactions","link","metadata","name","uri"],"type":"object"},"on-demand-page":{"title":"On Demand Page","properties":{"background":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The background image for the On Demand page on Vimeo.","nullable":true},"colors":{"description":"The primary and secondary colors of the On Demand page.","properties":{"primary":{"description":"The hexadecimal color code for the On Demand page's primary color.","example":"#0a0808","type":"string"},"secondary":{"description":"The hexadecimal color code for the On Demand page's secondary color.","example":"#ba4a17","type":"string"}},"required":["primary","secondary"],"type":"object"},"content_rating":{"description":"An array of the On Demand page's content ratings.","items":{"type":"string"},"type":"array"},"created_time":{"description":"The time in ISO 8601 format when the On Demand page was created.","example":"2017-05-15T13:42:25+00:00","type":"string"},"description":{"description":"The description of the On Demand page.","example":"DARBY FOREVER follows the fantasies of Darby, a shopgirl at \"Bobbins & Notions\"","nullable":true,"type":"string"},"domain_link":{"description":"The link to the On Demand page on its own domain.","example":"https://example.com","nullable":true,"type":"string"},"episodes":{"description":"Information about the On Demand page's episodes, if the page is for a series.","properties":{"buy":{"properties":{"active":{"description":"Whether all the videos on the On Demand page can be purchased as a whole.","example":true,"type":"boolean"},"price":{"description":"The default price to buy an episode.","example":9.99,"nullable":true,"type":"number"}},"required":["active","price"],"type":"object"},"rent":{"properties":{"active":{"description":"Whether all the videos on the On Demand page can be rented as a whole.","example":true,"type":"boolean"},"period":{"description":"The rental period for the video.\n\nOption descriptions:\n * `1 day` - The rental period is one day.\n * `1 month` - The rental period is one month.\n * `1 week` - The rental period is one week.\n * `1 year` - The rental period is one year.\n * `2 day` - The rental period is two days.\n * `24 hour` - The rental period is 24 hours.\n * `3 day` - The rental period is three days.\n * `3 month` - The rental period is three months.\n * `30 day` - The rental period is 30 days.\n * `48 hour` - The rental period is 48 hours.\n * `6 month` - The rental period is six months.\n * `60 day` - The rental period is 60 days.\n * `7 day` - The rental period is 7 days.\n * `72 hour` - The rental period is 72 hours.\n","enum":["1 day","1 month","1 week","1 year","2 day","24 hour","3 day","3 month","30 day","48 hour","6 month","60 day","7 day","72 hour"],"example":"1 day","nullable":true,"type":"string"},"price":{"description":"The default price to rent an episode.","example":2.99,"nullable":true,"type":"number"}},"required":["active","period","price"],"type":"object"}},"required":["buy","rent"],"type":"object"},"film":{"allOf":[{"$ref":"#/components/schemas/video"}],"description":"The On Demand page's film, if it is a film."},"genres":{"description":"An array of the genres assigned to the On Demand page.","items":{"$ref":"#/components/schemas/on-demand-genre"},"type":"array"},"link":{"description":"The link to the On Demand page on Vimeo.","example":"https://vimeo.com/ondemand/darbyforever","type":"string"},"metadata":{"description":"Metadata about the On Demand page.","properties":{"connections":{"description":"A collection of information that is connected to this resource, including videos, genres, and pictures connections.","properties":{"metadata":{"properties":{"connections":{"properties":{"comments":{"description":"Information about the comments associated with the On Demand page.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of comments on this connection.","example":4,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/pages/61326/comments","type":"string"}},"required":["options","total","uri"],"type":"object"},"genres":{"description":"Information about the genres associated with the On Demand page.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of genres on this connection.","example":9,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/pages/61326/genres","type":"string"}},"required":["options","total","uri"],"type":"object"},"likes":{"description":"Information about the likes associated with the On Demand page.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of likes on this connection.","example":15,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/pages/61326/likes","type":"string"}},"required":["options","total","uri"],"type":"object"},"pictures":{"description":"Information about the pictures associated with the On Demand page.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of pictures on this connection.","example":3,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/pages/61326/pictures","type":"string"}},"required":["options","total","uri"],"type":"object"},"seasons":{"description":"Information about the seasons associated with the On Demand page.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of seasons on this connection.","example":3,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/pages/61326/seasons","type":"string"}},"required":["options","total","uri"],"type":"object"},"videos":{"description":"Information about the videos associated with the On Demand page.","properties":{"extra_total":{"description":"The total number of extra videos on the On Demand page.","example":14,"type":"number"},"main_total":{"description":"The total number of main videos on the On Demand page.","example":36,"type":"number"},"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":50,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/pages/61326/videos","type":"string"},"viewable_total":{"description":"The total number of viewable videos on the On Demand page.","example":50,"type":"number"}},"required":["extra_total","main_total","options","total","uri","viewable_total"],"type":"object"}},"required":["comments","genres","likes","pictures","seasons","videos"],"type":"object"}},"required":["connections"],"type":"object"}},"required":["metadata"],"type":"object"},"interactions":{"allOf":[{"$ref":"#/components/schemas/purchase-interaction"}],"description":"The user's available purchase interactions."}},"required":["connections","interactions"],"type":"object"},"modified_time":{"description":"he time in ISO 8601 format when the On Demand page was last modified.","example":"2017-05-15T13:42:25+00:00","type":"string"},"name":{"description":"The descriptive title of the On Demand page.","example":"Darby Forever","type":"string"},"pictures":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The active poster for the On Demand page.","nullable":true},"preorder":{"properties":{"active":{"description":"Whether the On Demand page is available for preorder.","example":true,"type":"boolean"},"cancel_time":{"description":"The time in ISO 8601 format when the preorder was cancelled.","example":"2017-05-16T13:13:46+00:00","type":"string"},"publish_time":{"description":"The time in ISO 8601 format when the preorder was released to the public.","example":"2017-05-15T13:12:52+00:00","type":"string"},"time":{"description":"The time in ISO 8601 format when the preorder started.","example":"2017-05-15T13:13:31+00:00","type":"string"}},"required":["active","cancel_time","publish_time","time"],"type":"object"},"published":{"properties":{"enabled":{"description":"Whether the On Demand page has been published.","example":true,"type":"boolean"},"time":{"description":"The time in ISO 8601 format when this page was published.","example":"2017-05-15T13:12:52+00:00","type":"string"}},"required":["enabled","time"],"type":"object"},"rating":{"description":"The rating of the On Demand page.","example":7,"nullable":true,"type":"number"},"resource_key":{"description":"The On Demand resource key.","example":"bac1033deba2310ebba2caec33c23e4beea67aba","type":"string"},"sku":{"description":"The creator-designated SKU for the On Demand page.","example":"VIME0001","nullable":true,"type":"string"},"subscription":{"description":"Information about subscribing to the On Demand page, if subscription is enabled.","nullable":true,"properties":{"active":{"description":"Whether the On Demand product is active.","example":true,"type":"boolean"},"link":{"description":"The link to the On Demand product on Vimeo.","example":"https://vimeo.com/ondemand/darbyforever","nullable":true,"type":"string"},"period":{"description":"The On Demand product's rental period.","type":"string"},"price":{"description":"The accepted currencies and respective pricing for the On Demand product.","type":"object"}},"required":["active","link","price"],"type":"object"},"theme":{"description":"The graphical theme for the On Demand page.","example":"vader","type":"string"},"thumbnail":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The thumbnail image for the On Demand page on Vimeo.","nullable":true},"trailer":{"allOf":[{"$ref":"#/components/schemas/video"}],"description":"The trailer for the On Demand page.","nullable":true},"type":{"description":"Whether the On Demand page is for a film or a series.\n\nOption descriptions:\n * `film` - The On Demand page is for a film.\n * `series` - The On Demand page is for a series.\n","enum":["film","series"],"example":"film","type":"string"},"uri":{"description":"The relative URI of the On Demand page.","example":"/ondemand/pages/61326","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The user who created the On Demand page.","nullable":true}},"required":["background","colors","content_rating","description","domain_link","episodes","genres","link","metadata","name","pictures","preorder","published","rating","resource_key","subscription","theme","thumbnail","trailer","type","uri","user"],"type":"object"},"on-demand-promotion":{"title":"On Demand Promotion","properties":{"access_type":{"description":"The type of access that the promotion grants.\n\nOption descriptions:\n * `default` - The promotion grants discounts on existing product offerings.\n * `vip` - The promotion grants free access to On Demand content before it is released or to access types that aren't part of the existing product offerings.\n","enum":["default","vip"],"example":"default","type":"string"},"discount_type":{"description":"The type of discount that the promotion provides.\n\nOption descriptions:\n * `dollars` - The promotion discounts a fixed amount from the full purchase price.\n * `free` - The promotion discounts the full purchase price. When **access_type** is `vip`, **discount_type** is always `free`.\n * `percent` - The promotion discounts a percentage of the full purchase price.\n","enum":["dollars","free","percent"],"example":"free","type":"string"},"download":{"description":"Whether the promotion grants download access to On Demand content.","example":true,"type":"boolean"},"label":{"description":"The prefix string for batch codes, or the null value for single codes.","example":"8jgaieumbzstujhn8k304iwwezawkvwm","nullable":true,"type":"string"},"metadata":{"description":"The video's metadata.","properties":{"connections":{"description":"A list of resource URIs related to the promotion.","properties":{"codes":{"description":"Information about the codes associated with the promotion.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of uses on this connection.","example":1,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/pages/61326/promotion/12345/codes","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["codes"],"type":"object"}},"required":["connections"],"type":"object"},"percent_off":{"description":"When **discount_type** is `percent`, the percentage amount that is deducted from the product price.","example":100,"type":"number"},"product_type":{"description":"The type of product to which the promotion can be applied. Only the `buy` and `rent` options are available when **access_type** is `vip`.\n\nOption descriptions:\n * `any` - The promotion can be applied to any product.\n * `buy` - The promotion can be applied to a buyable single video.\n * `buy_episode` - The promotion can be applied to a buyable single episode.\n * `rent` - The promotion can be applied to a rentable single video.\n * `rent_episode` - The promotion can be applied to a rentable single episode.\n * `subscribe` - The promotion can be applied to a subscription.\n","enum":["any","buy","buy_episode","rent","rent_episode","subscribe"],"example":"any","type":"string"},"stream_period":{"description":"The amount of time that the user has access to the On Demand content after redeeming a promo code.\n\nOption descriptions:\n * `1_week` - Access lasts for one week.\n * `1_year` - Access lasts for one year.\n * `24_hour` - Access lasts for 24 hours.\n * `30_days` - Access lasts for 30 days.\n * `3_month` - Access lasts for three months.\n * `48_hour` - Access lasts for 48 hours.\n * `6_month` - Access lasts for six months.\n * `72_hour` - Access lasts for 72 hours.\n","enum":["1_week","1_year","24_hour","30_days","3_month","48_hour","6_month","72_hour"],"example":"1_week","nullable":true,"type":"string"},"total":{"description":"When **type** is `single`, the total number of times that the promotion can be used. When **type** is `batch` or `batch_prefix`, the total number of promo codes that have been generated.","example":1,"type":"number"},"type":{"description":"The way in which the promotion generates promo codes.\n\nOption descriptions:\n * `batch` - The promotion provides a unique promo code for each user.\n * `batch_prefix` - Like `batch`, except that all codes have a similar prefix string. This option is deprecated, yet it may still appear for some users.\n * `single` - The promotion provides a single promo code for all users.\n","enum":["batch","batch_prefix","single"],"example":"batch","type":"string"},"uri":{"description":"The promotion's canonical relative URI.","example":"/ondemand/pages/61326/promotions/12345","type":"string"}},"required":["access_type","discount_type","download","label","metadata","percent_off","product_type","stream_period","total","type","uri"],"type":"object"},"on-demand-promotion-code":{"title":"On Demand Promotion Code","properties":{"code":{"description":"The Vimeo promotion code.","example":"8jgaieumbzstujhn8k304iwwezawkvwm","type":"string"},"link":{"description":"The link to redeem the promotion code.","example":"https://vimeo.com/r/0trBLg/OGpnYWlldW","type":"string"},"max_uses":{"description":"The total number of times that this code can be used.","example":1,"type":"number"},"uses":{"description":"The current number of times that this code has been used.","example":0,"type":"number"}},"required":["code","link","max_uses","uses"],"type":"object"},"on-demand-region":{"title":"On Demand Region","properties":{"country_code":{"description":"The ISO 3166-1 alpha-2 code for this country.","example":"US","type":"string"},"country_name":{"description":"The descriptive name of this country.","example":"United States","type":"string"},"uri":{"description":"The region container's relative URI.","example":"/ondemand/pages/61326/regions/US","type":"string"}},"required":["country_code","country_name","uri"],"type":"object"},"on-demand-season":{"title":"On Demand Season","properties":{"description":{"description":"The description of the season.","example":"Season 1","type":"string"},"metadata":{"properties":{"connections":{"properties":{"videos":{"description":"The Videos connection.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":13,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/pages/61326/season/12345/videos","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["videos"],"type":"object"}},"required":["connections"],"type":"object"},"name":{"description":"The name of the season.","example":"Season 1","type":"string"},"position":{"description":"The position of the season relative to other seasons in the series.","example":1,"type":"number"},"resource_key":{"description":"The unique identifier of the On Demand season.","example":"bac1033deba2310ebba2caec33c23e4beea67aba","type":"string"},"type":{"description":"The type of the season.","example":"main","type":"string"},"uri":{"description":"The season container's relative URI.","example":"/ondemand/pages/61326/seasons/12345","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The creator of the season's On Demand page.","nullable":true}},"required":["description","metadata","name","position","resource_key","type","uri","user"],"type":"object"},"on-demand-video":{"title":"On Demand Video","properties":{"buy":{"description":"Information about purchasing the video.","nullable":true,"properties":{"active":{"description":"Whether the video can be purchased.","example":true,"type":"boolean"},"price":{"description":"A map of currency type to price.","type":"object"},"purchased":{"description":"Whether the video has been purchased.","example":true,"type":"boolean"}},"required":["active","price"],"type":"object"},"description":{"description":"The description of the video.","example":"This video provides in-depth instruction in the use of the Vimeo API.","type":"string"},"duration":{"description":"The duration of the video.","example":"1197","type":"string"},"episode":{"description":"The episode number of the video.","example":1,"type":"number"},"interactions":{"description":"An object containing information about how the authenticated user can interact with the video's On Demand page.","properties":{"page":{"description":"Information about how the authenticated user can interact with the connection to the video's On Demand page.","properties":{"added":{"description":"Whether the On Demand page was added.","example":true,"type":"boolean"},"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The URI to access the On Demand page.","example":"/ondemand/pages/61326","type":"string"}},"required":["added","options","uri"],"type":"object"}},"required":["page"],"type":"object"},"link":{"description":"The link to the video on Vimeo.","example":"https://vimeo.com/ondemand/darbyforever/12345","type":"string"},"metadata":{"description":"Metadata information about the video.","properties":{"connections":{"properties":{"season":{"description":"Information about the video's season.","properties":{"name":{"description":"The name of the season on this connection.","example":"Season 1","type":"string"},"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/pages/61326/seasons/12345","type":"string"}},"required":["name","options","uri"],"type":"object"}},"required":["season"],"type":"object"},"interactions":{"properties":{"likes":{"description":"Information about the authenticated user's interaction to like the video.","properties":{"added":{"description":"Whether the authenticated user has liked the video.","example":true,"type":"boolean"},"added_time":{"description":"The time in ISO 8601 format when the authenticated user liked the video.","example":"2017-05-12T21:42:42+00:00","type":"string"},"uri":{"description":"The URI for the authenticated user to like the video.","example":"/users/152184/likes/12345","type":"string"}},"required":["added","added_time","uri"],"type":"object"},"watchlater":{"description":"Information about the authenticated user's interaction to watch the video later.","properties":{"added":{"description":"Whether the authenticated user has added the video to their Watch Later queue.","example":true,"type":"boolean"},"added_time":{"description":"The time in ISO 8601 format when the authenticated user added the video to their Watch Later queue.","example":"2017-05-12T21:42:42+00:00","type":"string"},"uri":{"description":"The URI for the authenticated user to add the video to their Watch Later queue.","example":"/users/152184/watchlater/12345","type":"string"}},"required":["added","added_time","uri"],"type":"object"}},"required":["likes","watchlater"],"type":"object"}},"required":["connections","interactions"],"type":"object"},"name":{"description":"The title of the video.","example":"Darby Forever","type":"string"},"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"pictures":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The active picture of the video."},"play_progress":{"description":"The authenticated user's most recent play position in the video, in seconds.","example":30,"type":"number"},"position":{"description":"The position of the video relative to the other videos on the On Demand page.","example":1,"type":"number"},"release_date":{"description":"The time in ISO 8601 format when the video was created or published.","example":"2017-05-12T21:06:42+00:00","type":"string"},"release_year":{"description":"The year that the video was released.","example":2016,"nullable":true,"type":"number"},"rent":{"description":"Information about renting the video.","nullable":true,"properties":{"active":{"description":"Whether the video can be rented.","example":true,"type":"boolean"},"price":{"description":"A map of currency type to price.","type":"object"},"purchased":{"description":"Whether the video has been rented.","example":true,"type":"boolean"}},"required":["active","price"],"type":"object"},"type":{"description":"The type of the video:\n\nOption descriptions:\n * `extra` - The video is an extra feature.\n * `main` - The video is a main feature.\n * `trailer` - The video is a trailer.\n","enum":["extra","main","trailer"],"example":"main","type":"string"},"uri":{"description":"The video container's relative URI.","example":"/ondemand/pages/61326/videos/12345","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The owner of the video."}},"required":["buy","interactions","link","metadata","play_progress","release_year","rent","type","uri"],"type":"object"},"picture":{"title":"Picture","properties":{"active":{"description":"Whether the picture is currently active.","example":true,"type":"boolean"},"default_picture":{"description":"Whether the picture is Vimeo's default","example":false,"type":"boolean"},"link":{"description":"The upload URL of the picture. This field appears upon the initial creation of a picture resource.","type":"string"},"resource_key":{"description":"The resource key string of the picture.","example":"dc724af18fbdd4e59189f5fe768a5f8311527050","type":"string"},"sizes":{"description":"An array containing reference information about all available image files.","items":{"type":"object","properties":{"height":{"description":"The height of the picture.","example":720,"nullable":true,"type":"number"},"link":{"description":"The direct link to the image file.","example":"https://i.vimeocdn.com/video/581495283_1280x720.jpg?r=pad&subrect=0,12,21,22&r=cover","type":"string"},"link_with_play_button":{"description":"The direct link to the image file with a play button overlay.","example":"https://i.vimeocdn.com/filter/overlay?src0=https%3A%2F%2Fi.vimeocdn.com%2Fvideo%2F581495283_1280x720.jpg&src1=http%3A%2F%2Ff.vimeocdn.com%2Fp%2Fimages%2Fcrawler_play.png","type":"string"},"width":{"description":"The width of the picture.","example":1280,"type":"number"}},"required":["height","link","width"]},"type":"array"},"type":{"description":"The type of the picture:\n\nOption descriptions:\n * `caution` - The picture isn't appropriate for all ages.\n * `custom` - The picture is a custom video image.\n * `default` - The picture is the default video image.\n","enum":["caution","custom","default"],"example":"caution","type":"string"},"uri":{"description":"The URI of the picture.","example":"/users/152184/pictures/12345","type":"string"}},"required":["active","default_picture","resource_key","sizes","type","uri"],"type":"object"},"portfolio":{"title":"Portfolio","properties":{"created_time":{"description":"The time in ISO 8601 format when the portfolio was created.","example":"2017-05-16T19:56:07+00:00","type":"string"},"description":{"description":"The description of the portfolio.","example":"The Vimeo Staff original productions.","nullable":true,"type":"string"},"link":{"description":"The link to the portfolio.","example":"https://vimeopro.com/staff/originals","type":"string"},"metadata":{"description":"Metadata about the portfolio.","properties":{"connections":{"description":"A list of resource URIs related to the portfolio.","properties":{"videos":{"description":"Information about the videos contained within the portfolio.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":18,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/portfolios/12345/videos","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["videos"],"type":"object"}},"required":["connections"],"type":"object"},"modified_time":{"description":"The time in ISO 8601 format when the portfolio's data was last modified.","example":"2017-05-17T19:56:07+00:00","type":"string"},"name":{"description":"The display name of the portfolio.","example":"Vimeo Originals!","type":"string"},"sort":{"description":"The default video sort order of the portfolio:\n\nOption descriptions:\n * `alphabetical` - The default sort order is alphabetical by name.\n * `clips` - The default sort order is video creation date.\n * `modified` - The default sort order is the order in which the videos were modified.\n * `recent` - The default sort order is the order in which the videos were added.\n","enum":["alphabetical","clips","modified","recent"],"example":"alphabetical","type":"string"},"uri":{"description":"The canonical relative URI of the portfolio.","example":"/users/152184/portfolios/12345","type":"string"}},"required":["created_time","description","link","metadata","modified_time","name","sort","uri"],"type":"object"},"preset":{"title":"Preset","properties":{"metadata":{"description":"Metadata about the preset.","properties":{"connections":{"description":"A list of resource URIs related to the preset.","properties":{"videos":{"description":"Information about the videos in the preset.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":13,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/presets/12345/videos","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["videos"],"type":"object"}},"required":["connections"],"type":"object"},"name":{"description":"The display name of the presets group.","example":"Minimalism","type":"string"},"settings":{"description":"The contents of the presets group.","properties":{"buttons":{"properties":{"embed":{"description":"Whether the preset includes Embed button settings.","example":true,"type":"boolean"},"hd":{"description":"Whether the preset includes HD button settings.","example":true,"type":"boolean"},"like":{"description":"Whether the preset includes Like button settings.","example":true,"type":"boolean"},"share":{"description":"Whether the present includes Share button settings.","example":true,"type":"boolean"},"vote":{"description":"Whether the preset includes Vote button settings.","example":true,"type":"boolean"},"watchlater":{"description":"Whether the preset includes Watch Later button settings.","example":true,"type":"boolean"}},"required":["embed","hd","like","share","vote","watchlater"],"type":"object"},"logos":{"properties":{"custom":{"description":"Whether the preset includes custom logo settings.","example":true,"type":"boolean"},"sticky_custom":{"description":"Whether the present includes sticky custom logo settings.","example":true,"type":"boolean"},"vimeo":{"description":"Whether the preset includes Vimeo logo settings.","example":true,"type":"boolean"}},"required":["custom","sticky_custom","vimeo"],"type":"object"},"outro":{"properties":{"clips":{"description":"A comma-separated list of video URIs. This field appears only when **type** is `uploaded_clips`.","example":"/videos/258684937,/videos/273576296","nullable":true,"type":"string"},"link":{"description":"The outro link settings. These fields appear only when **type** is `link`.","nullable":true,"properties":{"name":{"description":"The name of the outro link.","example":"Example Outro","type":"string"},"url":{"description":"The URL of the outro link.","example":"https://example.com","type":"string"}},"type":"object"},"text":{"description":"The outro text. This appears only when **type** is `text`.","example":"Lorem ipsum dolor sit amet, consectetur adipiscing elit.","nullable":true,"type":"string"},"type":{"description":"The preset outro type:\n\nOption descriptions:\n * `link` - The outro includes a link.\n * `no idea` - The outro type is `no idea`. The outro includes uploaded videos.\n * `text` - The outro includes text.\n * `uploaded_clips` - The outro includes uploaded videos.\n * `uploaded_videos` - The outro includes uploaded videos.\n","enum":["link","no idea","text","uploaded_clips","uploaded_videos"],"example":"link","type":"string"},"videos":{"description":"A comma-separated list of video URIs. This field appears only when **type** is `no idea`.","example":"/videos/258684937,/videos/273576296","nullable":true,"type":"string"}},"required":["type"],"type":"object"}},"required":["buttons","logos","outro"],"type":"object"},"uri":{"description":"The canonical relative URI of the presets object.","example":"/users/152184/presets/12345","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The owner of the preset.","nullable":true}},"required":["metadata","name","settings","uri","user"],"type":"object"},"project":{"title":"Project","properties":{"created_time":{"description":"The time in ISO 8601 format when the folder was created.","example":"2017-05-23T14:36:22+00:00","type":"string"},"last_user_action_event_date":{"description":"The time in ISO 8601 format when a user last performed an action on the folder.","example":"2018-03-21T23:08:22+00:00","nullable":true,"type":"string"},"link":{"description":"The link to the video on Vimeo.","example":"https://vimeo.com/user/112233/folders/12345","type":"string"},"metadata":{"description":"Information about the folders's metadata.","properties":{"connections":{"description":"A list of resource URIs related to the folder.","properties":{"folders":{"description":"A standard connection object indicating how to return all the subfolders in the folder.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of subfolders on this connection.","example":12,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/projects/12345/items","type":"string"}},"required":["options","total","uri"],"type":"object"},"items":{"description":"A standard connection object indicating how to return all the items in the folder.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of items on this connection.","example":12,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/projects/12345/items","type":"string"}},"required":["options","total","uri"],"type":"object"},"videos":{"description":"A standard connection object indicating how to return all the videos in the folder.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":12,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/projects/12345/videos","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["folders","items","videos"],"type":"object"}},"required":["connections"],"type":"object"},"modified_time":{"description":"The time in ISO 8601 format when the folder was last modified.","example":"2017-05-23T14:36:22+00:00","type":"string"},"name":{"description":"The name of the folder.","example":"Rough cuts","type":"string"},"privacy":{"description":"The privacy settings of the folder.","properties":{"view":{"description":"The privacy setting for accessing the folder.\n\nOption descriptions:\n * `anybody` - Anyone with the link can access the contents of the folder.\n * `nobody` - Only the owner and those team members that the owner has explicitly invited can access the contents of the folder.\n * `team` - Only those team members with the link can access the contents of the folder.\n","enum":["anybody","nobody","team"],"example":"anybody","type":"string"}},"required":["view"],"type":"object"},"resource_key":{"description":"The resource key string of the folder.","example":"dc724af18fbdd4e59189f5fe768a5f8311527050","type":"string"},"uri":{"description":"The URI of the folder.","example":"/users/112233/projects/12345","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The owner of the folder."}},"required":["created_time","last_user_action_event_date","link","metadata","modified_time","name","privacy","resource_key","uri","user"],"type":"object"},"purchase-interaction":{"title":"Purchase Interaction","properties":{"buy":{"description":"Information on purchasing the On Demand video.","nullable":true,"properties":{"drm":{"description":"Whether the On Demand video has DRM.","example":true,"type":"boolean"}},"type":"object"},"rent":{"description":"Information on renting the On Demand video.","nullable":true,"type":"object"},"subscribe":{"description":"Information on subscribing to the On Demand video.","nullable":true,"properties":{"drm":{"description":"Whether the On Demand subscription has DRM.","example":true,"type":"boolean"},"expires_time":{"description":"The time in ISO 8601 format when the On Demand video expires.","example":"2018-03-05T21:04:47+00:00","nullable":true,"type":"string"},"link":{"description":"The URL to purchase the On Demand subscription on Vimeo.","example":"https://vimeo.com/ondemand/darbyforever","nullable":true,"type":"string"},"purchase_time":{"description":"The time in ISO 8601 format when the On Demand video was purchased.","example":"2018-03-05T21:04:47+00:00","nullable":true,"type":"string"},"stream":{"description":"The user's streaming access to the On Demand subscription:\n\nOption descriptions:\n * `available` - The On Demand subscription is available for streaming.\n * `purchased` - The On Demand subscription has been purchased.\n * `restricted` - Streaming for the On Demand subscription is restricted.\n * `unavailable` - The On Demand subscription is unavailable.\n","enum":["available","purchased","restricted","unavailable"],"example":"available","type":"string"},"uri":{"description":"The On Demand subscription's product URI.","example":"/ondemand/pages/61326/products/12345","nullable":true,"type":"string"}},"type":"object"}},"type":"object"},"skill":{"title":"Skill","properties":{"name":{"description":"The skill's display name.","example":"Director","type":"string"},"uri":{"description":"The skill's canonical relative URI.","example":"/marketplace/skills/152184","type":"string"}},"required":["name","uri"],"type":"object"},"tag":{"title":"Tag","properties":{"canonical":{"description":"The normalized canonical tag name.","example":"awesome","type":"string"},"metadata":{"description":"Metadata about the tag.","properties":{"connections":{"description":"A collection of information that is connected to this resource.","properties":{"videos":{"description":"Information about the videos related to this tag.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":34371,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/tags/awesome/videos","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["videos"],"type":"object"}},"required":["connections"],"type":"object"},"name":{"description":"The tag value.","example":"awesome","type":"string"},"resource_key":{"description":"The tag's resource key string.","example":"bac1033deba2310ebba2caec33c23e4beea67aba","type":"string"},"uri":{"description":"The canonical relative URI of the tag.","example":"/videos/258684937/tags/awesome","type":"string"}},"required":["canonical","metadata","name","resource_key","uri"],"type":"object"},"text-track":{"title":"Text Track","properties":{"active":{"description":"Whether the text track is active.","example":true,"type":"boolean"},"hls_link":{"description":"The read-only URL of the text track file, intended for use with HLS playback.","type":"string"},"hls_link_expires_time":{"description":"The time in ISO 8601 format when the read-only HLS playback text track file expires.","example":"1494888499","type":"string"},"language":{"description":"The language code for the text track. To see a full list, request `/languages?filter=texttrack`.","example":"en-US","nullable":true,"type":"string"},"link":{"description":"The read-only URL of the text track file. You can upload to this link when you create it for the first time.","type":"string"},"link_expires_time":{"description":"The time in ISO 8601 format when the text track link expires.","example":"1494888499","type":"string"},"name":{"description":"The descriptive name of the text track.","example":"English Subtitles","nullable":true,"type":"string"},"type":{"description":"The type of the text track:\n\nOption descriptions:\n * `captions` - The text track is for captions.\n * `subtitles` - The text track is for subtitles.\n","enum":["captions","subtitles"],"example":"captions","nullable":true,"type":"string"},"uri":{"description":"The relative URI of the text track.","example":"/videos/258684937/texttracks/12345","type":"string"}},"required":["active","hls_link","hls_link_expires_time","language","link","link_expires_time","name","type","uri"],"type":"object"},"upload-attempt":{"title":"Upload Attempt","properties":{"clip":{"allOf":[{"$ref":"#/components/schemas/video"}],"description":"The video to upload."},"complete_uri":{"description":"The completion URI of the upload.","example":"/users/152184/uploads/12345?video_file_id=5678&upgrade=true&signature=r394y347ffefeff434","type":"string"},"form":{"description":"The HTML upload form.","type":"string"},"ticket_id":{"description":"The ticket identifier string for the upload.","example":"3da5dac09","type":"string"},"upload_link":{"description":"The upload URL.","example":"https://123456.cloud.vimeo.com/upload?ticket_id=1234asdf","type":"string"},"uri":{"description":"The upload URI.","example":"/users/152184/uploads/12345","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The owner of the uploaded video."}},"required":["ticket_id","upload_link","uri","user"],"type":"object"},"user":{"title":"User","properties":{"account":{"description":"The authenticated user's account type:\n\nOption descriptions:\n * `basic` - The user has a Vimeo Basic subscription.\n * `business` - The user has a Vimeo Business subscription.\n * `live_business` - The user has a Vimeo Business Live subscription.\n * `live_premium` - The user has a Vimeo Premium subscription.\n * `live_pro` - The user has a Vimeo PRO Live subscription.\n * `plus` - The user has a Vimeo Plus subscription.\n * `pro` - The user has a Vimeo Pro subscription.\n * `pro_unlimited` - The user has a Vimeo PRO Unlimited subscription.\n * `producer` - The user has a Vimeo Producer subscription.\n","enum":["basic","business","live_business","live_premium","live_pro","plus","pro","pro_unlimited","producer"],"example":"basic","type":"string"},"available_for_hire":{"description":"Whether the authenticated user is available for hire.","example":false,"type":"boolean"},"bio":{"description":"The authenticated user's long bio text.","example":"This is where you will find videos and news updates from the staff.","nullable":true,"type":"string"},"can_work_remotely":{"description":"Whether the authenticated user can work remotely.","example":false,"type":"boolean"},"clients":{"description":"The comma-separated list of clients.","example":"vimeo","type":"string"},"content_filter":{"description":"The authenticated user's content filters:\n\nOption descriptions:\n * `drugs` - Drugs or alcohol use.\n * `language` - Profanity or sexually suggestive content.\n * `nudity` - Nudity.\n * `safe` - Suitable for all audiences.\n * `unrated` - No rating.\n * `violence` - Violent or graphic content.\n","enum":["drugs","language","nudity","safe","unrated","violence"],"items":{"type":"string","example":"drugs"},"type":"array"},"created_time":{"description":"The time in ISO 8601 format when the user account was created.","example":"2007-01-18T16:40:11+00:00","type":"string"},"gender":{"description":"The authenticated user's gender.","example":"m","nullable":true,"type":"string"},"link":{"description":"The absolute URL of the authenticated users's profile page.","example":"https://vimeo.com/staff","type":"string"},"location":{"description":"The authenticated user's location.","example":"New York City","nullable":true,"type":"string"},"location_details":{"allOf":[{"$ref":"#/components/schemas/location"}],"description":"The authenticated user's location details.","nullable":true},"metadata":{"description":"The authenticated user's metadata.","properties":{"connections":{"description":"The list of resource URIs related to the authenticated user.","properties":{"albums":{"description":"Information about the showcases created by the authenticated user.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of showcases on this connection.","example":3,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/albums","type":"string"}},"required":["options","total","uri"],"type":"object"},"appearances":{"description":"Information about the appearances of the authenticated user in other videos.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of appearances on this connection.","example":6,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/appearances","type":"string"}},"required":["options","total","uri"],"type":"object"},"block":{"description":"Information about the users that the authenticated user has blocked. This data requires a bearer token with the `private` scope. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of blocked users on this connection. This data requires a bearer token with the `private` scope.","example":73,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/me/block","type":"string"}},"required":["options","total","uri"],"type":"object"},"categories":{"description":"Information about the categories that the authenticated user is following.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of categories on this connection.","example":5,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/categories","type":"string"}},"required":["options","total","uri"],"type":"object"},"channels":{"description":"Information about the channels to which the authenticated user subscribes.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of channels on this connection.","example":4,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/channels","type":"string"}},"required":["options","total","uri"],"type":"object"},"connected_apps":{"description":"Information about the authenticated user's connected apps.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of connected apps on this connection.","example":4,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/me/connected_apps","type":"string"}},"required":["options","total","uri"],"type":"object"},"feed":{"description":"Information about the authenticated user's feed.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/feed","type":"string"}},"required":["options","uri"],"type":"object"},"folders":{"description":"Information about the authenticated user's folders.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of folders on this connection.","example":9,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/folders","type":"string"}},"required":["options","total","uri"],"type":"object"},"folders_root":{"description":"Information about the authenticated user's root level folders and videos.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/123456789/folders/root","type":"string"}},"required":["options","uri"],"type":"object"},"followers":{"description":"Information about the authenticated user's followers.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of followers on this connection.","example":12,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/followers","type":"string"}},"required":["options","total","uri"],"type":"object"},"following":{"description":"Information about the users that the authenticated user is following.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of users on this connection.","example":47,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/following","type":"string"}},"required":["options","total","uri"],"type":"object"},"groups":{"description":"Information about the groups created by the authenticated user.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of groups on this connection.","example":2,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/groups","type":"string"}},"required":["options","total","uri"],"type":"object"},"likes":{"description":"Information about the videos that the authenticated user has liked.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of likes on this connection.","example":300,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/likes","type":"string"}},"required":["options","total","uri"],"type":"object"},"moderated_channels":{"description":"Information about the channels that the authenticated user moderates.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of channels on this connection.","example":1,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/channels?filter=moderated","type":"string"}},"required":["options","total","uri"],"type":"object"},"pictures":{"description":"Information about the authenticated user's portraits.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of pictures on this connection.","example":3,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/pictures","type":"string"}},"required":["options","total","uri"],"type":"object"},"portfolios":{"description":"Information about the authenticated user's portfolios.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of portfolios on this connection.","example":5,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/portfolios","type":"string"}},"required":["options","total","uri"],"type":"object"},"recommended_channels":{"description":"A collection of recommended channels for the authenticated user to follow. This data requires a bearer token with the `private` scope. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of channels on this connection. This data requires a bearer token with the `private` scope.","example":4,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/me/recommendations/channels","type":"string"}},"required":["options","total","uri"],"type":"object"},"recommended_users":{"description":"A collection of recommended users for the authenticated user to follow. This data requires a bearer token with the `private` scope. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of users on this connection. This data requires a bearer token with the `private` scope.","example":6,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/me/recommendations/users","type":"string"}},"required":["options","total","uri"],"type":"object"},"shared":{"description":"Information about the videos that have been shared with the authenticated user.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":15,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/shared/videos","type":"string"}},"required":["options","total","uri"],"type":"object"},"videos":{"description":"Information about the videos that the authenticated user has uploaded.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":36,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/videos","type":"string"}},"required":["options","total","uri"],"type":"object"},"watched_videos":{"description":"Information about the videos that the authenticated user has watched.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":322,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/me/watched/videos","type":"string"}},"required":["options","total","uri"],"type":"object"},"watchlater":{"description":"Information about the videos that the authenticated user has marked to watch later.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":14,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/watchlater","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["albums","appearances","block","categories","channels","connected_apps","feed","folders","folders_root","followers","following","groups","likes","moderated_channels","pictures","portfolios","recommended_channels","recommended_users","shared","videos","watched_videos","watchlater"],"type":"object"},"interactions":{"properties":{"add_privacy_user":{"properties":{"options":{"description":"An array of the HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/channels/152184/privacy/users","type":"string"}},"type":"object"},"block":{"description":"Information about the block status of the authenticated user.","properties":{"added":{"description":"Whether the authenticated user is blocking the requested user.","example":true,"type":"boolean"},"added_time":{"description":"The time in ISO 8601 format when the block occurred, or the null value if no block exists.","example":"2017-05-16T15:05:43+00:00","nullable":true,"type":"string"},"options":{"description":"An array of the HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The URI to block or unblock the requested user.","example":"/me/block/3766357","type":"string"}},"required":["added","added_time","options","uri"],"type":"object"},"connected_apps":{"properties":{"all_scopes":{"description":"The list of all the scopes on the connected app that are needed for a particular Vimeo feature.","type":"object"},"is_connected":{"description":"Whether the authenticated user is connected to the connected app.","example":true,"type":"boolean"},"needed_scopes":{"description":"The list of the remaining scopes on the connected app that the authenticated user needs for a particular Vimeo feature.","type":"object"},"options":{"description":"An array of the HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The URI of the connected app.","example":"/me/connected_apps/facebook","type":"string"}},"required":["all_scopes","is_connected","needed_scopes","options","uri"],"type":"object"},"follow":{"description":"Information about the followed status of the authenticated user.","properties":{"added":{"description":"Whether the authenticated user is following the requested user.","example":true,"type":"boolean"},"options":{"description":"An array of the HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The URI to follow the requested user.","example":"/users/152184/following/3766357","type":"string"}},"required":["added","options","uri"],"type":"object"},"report":{"description":"Information about where and how to report the requested user.","properties":{"options":{"description":"An array of the HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"reason":{"description":"A list of valid reasons for reporting a video.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/users/152184/report","type":"string"}},"required":["options","reason","uri"],"type":"object"}},"required":["block","connected_apps","follow","report"],"type":"object"},"public_videos":{"properties":{"total":{"description":"The total number of public videos that the authenticated user has uploaded.","example":100,"type":"number"}},"required":["total"],"type":"object"}},"required":["connections","interactions","public_videos"],"type":"object"},"name":{"description":"The authenticated user's display name.","example":"Vimeo Staff","type":"string"},"pictures":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The active portrait of the authenticated user."},"preferences":{"properties":{"videos":{"properties":{"privacy":{"properties":{"password":{"description":"The password for viewing the authenticated user's videos.","example":"hunter1","type":"string"}},"type":"object"}},"type":"object"}},"type":"object"},"resource_key":{"description":"The authenticated user's resource key string.","example":"bac1033deba2310ebba2caec33c23e4beea67aba","type":"string"},"short_bio":{"description":"The authenticated user's short bio text.","example":"This is a short biography about me!","nullable":true,"type":"string"},"skills":{"description":"A list of the authenticated user's skills.","items":{"$ref":"#/components/schemas/skill"},"nullable":true,"type":"array"},"upload_quota":{"description":"This information appears only when the authenticated user has upload access and is looking at their own user record.","properties":{"lifetime":{"description":"Information about the authenticated user's lifetime upload usage.","properties":{"free":{"description":"The number of bytes remaining in the authenticated user's lifetime maximum.","example":5000000,"nullable":true,"type":"number"},"max":{"description":"The total number of bytes that the authenticated user can upload across the lifetime of their account.","example":5368709120,"nullable":true,"type":"number"},"used":{"description":"The number of bytes that the authenticated user has already uploaded against their lifetime limit.","example":5368704120,"nullable":true,"type":"number"}},"required":["free","max","used"],"type":"object"},"periodic":{"description":"Information about the authenticated user's usage for the current period.","properties":{"free":{"description":"The number of bytes remaining in the authenticated user's upload quota for the current period.","example":5000000,"nullable":true,"type":"number"},"max":{"description":"The total number of bytes that the authenticated user can upload per period.","example":5368709120,"nullable":true,"type":"number"},"reset_date":{"description":"The time in ISO 8601 format when the authenticated user's upload quota resets.","example":"2029-03-13T02:35:13-04:00","nullable":true,"type":"string"},"used":{"description":"The number of bytes that the authenticated user has already uploaded against their quota in the current period.","example":5368704120,"nullable":true,"type":"number"}},"required":["free","max","reset_date","used"],"type":"object"},"space":{"description":"Information about the authenticated user's upload space remaining for the current period.","properties":{"free":{"description":"The number of bytes remaining in the authenticated user's upload quota.","example":5000000,"type":"number"},"max":{"description":"The maximum number of bytes allotted to the authenticated user's upload quota.","example":5368709120,"nullable":true,"type":"number"},"showing":{"description":"Whether the values of the upload_quota.space fields are for the lifetime quota or the periodic quota.","enum":["lifetime","periodic"],"example":"lifetime","type":"string"},"used":{"description":"The number of bytes that the authenticated user has already uploaded against their quota.","example":5368704120,"type":"number"}},"required":["free","max","showing","used"],"type":"object"}},"required":["lifetime","periodic","space"],"type":"object"},"uri":{"description":"The authenticated user's canonical relative URI.","example":"/users/152184","type":"string"},"websites":{"description":"The authenticated user's websites.","items":{"type":"object","properties":{"description":{"description":"The website's description.","example":"Follow us on Twitter!","nullable":true,"type":"string"},"link":{"description":"The URL of the website.","example":"https://twitter.com/vimeo","type":"string"},"name":{"description":"The name of the website.","example":"Twitter","nullable":true,"type":"string"},"type":{"description":"The URL type of the website.","example":"facebook","type":"string"},"uri":{"description":"The uri of link to a custom website or social media page belonging to the user.","example":"/users/1234/links/1","type":"string"}},"required":["description","link","name","type","uri"]},"type":"array"}},"required":["account","available_for_hire","bio","can_work_remotely","clients","created_time","gender","link","location","location_details","metadata","name","pictures","resource_key","short_bio","skills","upload_quota","uri","websites"],"type":"object"},"video":{"title":"Video","properties":{"categories":{"description":"The categories to which the video belongs.","items":{"$ref":"#/components/schemas/category"},"type":"array"},"content_rating":{"description":"The video's content rating.","items":{"type":"string"},"type":"array"},"context":{"description":"The context of the video's subscription, if the video is part of a subscription.","properties":{"action":{"description":"The contextual action:\n\nOption descriptions:\n * `Added to` - An Added To action.\n * `Appearance by` - An Appearance By action.\n * `Liked by` - A Liked By action.\n * `Uploaded by` - An Unloaded By action.\n","enum":["Added to","Appearance by","Liked by","Uploaded by"],"example":"Added to","type":"string"},"resource":{"description":"The contextual resource: a user, group, or channel representation, or an object of a tag.","nullable":true,"type":"object"},"resource_type":{"description":"The contextual resource type.","example":"clip","type":"string"}},"required":["action","resource","resource_type"],"type":"object"},"created_time":{"description":"The time in ISO 8601 format when the video was created.","example":"2018-03-05T21:04:47+00:00","type":"string"},"description":{"description":"A brief explanation of the video's content.","example":"A celebration of 10 years of Staff Picks.","nullable":true,"type":"string"},"duration":{"description":"The video's duration in seconds.","example":81,"type":"number"},"embed":{"allOf":[{"$ref":"#/components/schemas/embed-settings"}],"description":"Information about embedding the video."},"height":{"description":"The video's height in pixels.","example":1080,"type":"number"},"is_playable":{"description":"Whether the clip is playable.","type":"boolean"},"language":{"description":"The video's primary language.","example":"en-US","nullable":true,"type":"string"},"last_user_action_event_date":{"description":"The time in ISO 8601 format when the user last modified the video.","example":"2018-03-21T23:08:22+00:00","nullable":true,"type":"string"},"license":{"description":"The [Creative Commons](http://creativecommons.org/licenses/) license used for the video:\n\nOption descriptions:\n * `by` - The Attribution license.\n * `by-nc` - The Attribution Non-Commercial license.\n * `by-nc-nd` - The Attribution Non-Commercial No Derivatives license.\n * `by-nc-sa` - The Attribution Non-Commercial Share Alike license.\n * `by-nd` - The Attribution No Derivatives license.\n * `by-sa` - The Attribution Share Alike license.\n * `cc0` - The Public Domain Dedication license.\n","enum":["by","by-nc","by-nc-nd","by-nc-sa","by-nd","by-sa","cc0"],"example":"by","type":"string"},"link":{"description":"The link to the video.","example":"https://vimeo.com/258684937","type":"string"},"metadata":{"description":"The video's metadata.","properties":{"connections":{"description":"A list of resource URIs related to the video.","properties":{"albums":{"description":"Information about the showcases that contain the video. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of showcases on this connection. This data requires a bearer token with the `private` scope.","example":14,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/videos/258684937/albums","type":"string"}},"required":["options","total","uri"],"type":"object"},"available_albums":{"description":"Information about the showcases to which the video can be added. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of showcases on this connection. This data requires a bearer token with the `private` scope.","example":14,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/videos/258684937/videos/available_albums","type":"string"}},"required":["options","total","uri"],"type":"object"},"available_channels":{"description":"Information about the channels to which the video can be added. This data requires a bearer token with the `private` scope.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI. This data requires a bearer token with the `private` scope.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of channels on this connection. This data requires a bearer token with the `private` scope.","example":14,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data. This data requires a bearer token with the `private` scope.","example":"/videos/258684937/videos/available_channels","type":"string"}},"required":["options","total","uri"],"type":"object"},"comments":{"description":"Information about the comments on the video.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of comments on this connection.","example":14,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937/comments","type":"string"}},"required":["options","total","uri"],"type":"object"},"credits":{"description":"Information about the users credited in the video.","nullable":true,"properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of users on this connection.","example":4,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937/credits","type":"string"}},"type":"object"},"likes":{"description":"Information about the users who have liked the video.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of likes on this connection.","example":230,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937/likes","type":"string"}},"required":["options","total","uri"],"type":"object"},"ondemand":{"description":"Information about the video's On Demand data.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"resource_key":{"description":"The On Demand connection resource key.","example":"bac1033deba2310ebba2caec33c23e4beea67aba","type":"string"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/pages/61326","type":"string"}},"required":["options","resource_key","uri"],"type":"object"},"pictures":{"description":"Information about the video's thumbnails.","properties":{"options":{"description":"An array of HTTP methods allowed on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"Total number of thumbnails on this connection.","example":1,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937/pictures","type":"string"}},"required":["options","total","uri"],"type":"object"},"playback":{"description":"Information about the video's DRM playback status.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937/playback","type":"string"}},"required":["options","uri"],"type":"object"},"publish_to_social":{"description":"Information about the user's publish to social history for the video.","nullable":true,"properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"publish_blockers":{"description":"Information about the publish blockers of the video.","nullable":true,"type":"object"},"publish_constraints":{"description":"Information about the publish constraints of the video.","nullable":true,"type":"object"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937/publish_to_social","type":"string"}},"required":["publish_blockers","publish_constraints"],"type":"object"},"recommendations":{"description":"Information about the recommendations for the video.","nullable":true,"properties":{"options":{"description":"An array of HTTP methods allowed on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937/recommendations","type":"string"}},"type":"object"},"related":{"description":"Information about the video's related content.","nullable":true,"properties":{"options":{"description":"An array of HTTP methods allowed on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937?offset=10","type":"string"}},"type":"object"},"season":{"description":"Information about the video's season.","properties":{"name":{"description":"The name of the season.","example":"Season 1","type":"string"},"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/pages/61326/season/12345","type":"string"}},"required":["name","options","uri"],"type":"object"},"texttracks":{"description":"Information about the video's text tracks.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of text tracks on this connection.","example":2,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937/texttracks","type":"string"}},"required":["options","total","uri"],"type":"object"},"trailer":{"description":"Information about the video's Vimeo On Demand trailer.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"resource_key":{"description":"The trailer connection resource key.","example":"bac1033deba2310ebba2caec33c23e4beea67aba","type":"string"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/ondemand/pages/61326/videos/12345","type":"string"}},"required":["options","resource_key","uri"],"type":"object"},"users_with_access":{"description":"Information about the user privacy of the video, if the video privacy is `users`.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of users on this connection.","example":8,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937/privacy/users","type":"string"}},"required":["options","total","uri"],"type":"object"},"versions":{"description":"Information about the video's versions.","properties":{"current_uri":{"description":"The URI of the current version of the video.","example":"/videos/258684937/versions/12345","type":"string"},"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"resource_key":{"description":"The resource key string of the current version of the video.","example":"bac1033deba2310ebba2caec33c23e4beea67aba","type":"string"},"total":{"description":"The total number of versions on this connection.","example":3,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937/versions","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["albums","available_albums","available_channels","comments","credits","likes","ondemand","pictures","playback","publish_to_social","recommendations","related","season","texttracks","trailer","users_with_access","versions"],"type":"object"},"interactions":{"description":"A list of resource URIs related to the video.","properties":{"album":{"description":"When a video is referenced by an album URI, if the user is a moderator of the album, include information about adding or removing the video from the album.","nullable":true,"properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","type":"string"}},"required":["options","uri"],"type":"object"},"buy":{"description":"The Buy interaction for a On Demand video.","nullable":true,"properties":{"currency":{"description":"The currency code for the user's region.","example":"USD","nullable":true,"type":"string"},"display_price":{"description":"The formatted display price for buying the On Demand video.","example":"5.99","nullable":true,"type":"string"},"download":{"description":"The user's download access to the On Demand video:\n\nOption descriptions:\n * `available` - The video is available for download.\n * `purchased` - The user has purchased the video.\n * `restricted` - The user isn't permitted to download the video.\n * `unavailable` - The video isn't available for download.\n","enum":["available","purchased","restricted","unavailable"],"example":"available","type":"string"},"drm":{"description":"Whether the On Demand video has DRM.","example":true,"type":"boolean"},"link":{"description":"The URL to buy the On Demand video on Vimeo.","example":"https://vimeo.com/ondemand/darbyforever","nullable":true,"type":"string"},"price":{"description":"The price to buy the On Demand video.","example":5.99,"nullable":true,"type":"number"},"purchase_time":{"description":"The time in ISO 8601 format when the On Demand video was purchased.","example":"2018-03-05T21:04:47+00:00","nullable":true,"type":"string"},"stream":{"description":"The user's streaming access to the On Demand video:\n\nOption descriptions:\n * `available` - The video is available for streaming.\n * `purchased` - The user has purchased the video.\n * `restricted` - The user isn't permitted to stream the video.\n * `unavailable` - The video isn't available for streaming\n","enum":["available","purchased","restricted","unavailable"],"example":"available","type":"string"},"uri":{"description":"The product URI to purchase the On Demand video.","example":"/ondemand/pages/61326/products/12345","nullable":true,"type":"string"}},"required":["currency","display_price","download","drm","link","price","purchase_time","stream","uri"],"type":"object"},"channel":{"description":"When a video is referenced by a channel URI, if the user is a moderator of the channel, include information about removing the video from the channel.","nullable":true,"properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","type":"string"}},"required":["options","uri"],"type":"object"},"delete":{"description":"Information about where and how to delete a video.","nullable":true,"properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","type":"string"}},"required":["options","uri"],"type":"object"},"edit":{"description":"Information about where and how to edit a video.","nullable":true,"properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","type":"string"}},"required":["options","uri"],"type":"object"},"like":{"description":"Information about whether the authenticated user has liked this video.","properties":{"added":{"description":"Whether the user has liked the video.","example":true,"type":"boolean"},"added_time":{"description":"The time in ISO 8601 format when the user liked the video.","type":"string"},"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","type":"string"}},"required":["added","added_time","options","uri"],"type":"object"},"rent":{"description":"The Rent interaction for an On Demand video.","nullable":true,"properties":{"currency":{"description":"The currency code for the user's region.","example":"USD","nullable":true,"type":"string"},"display_price":{"description":"The formatted display price for renting the On Demand video.","example":"5.99","nullable":true,"type":"string"},"drm":{"description":"Whether the On Demand video has DRM.","example":true,"type":"boolean"},"expires_time":{"description":"The time in ISO 8601 format when the rental period for the On Demand video expires.","example":"2018-03-05T21:04:47+00:00","nullable":true,"type":"string"},"link":{"description":"The URL to rent the On Demand video on Vimeo.","example":"https://vimeo.com/ondemand/darbyforever","nullable":true,"type":"string"},"price":{"description":"The price to buy the On Demand video.","example":5.99,"nullable":true,"type":"number"},"purchase_time":{"description":"The time in ISO 8601 format when the On Demand video was rented.","example":"2018-09-16T09:02:40+00:00","nullable":true,"type":"string"},"stream":{"description":"The user's streaming access to the On Demand video:\n\nOption descriptions:\n * `available` - The video is available for streaming.\n * `purchased` - The user has purchased the video.\n * `restricted` - The user isn't permitted to stream the video.\n * `unavailable` - The video isn't available for streaming.\n","enum":["available","purchased","restricted","unavailable"],"example":"available","type":"string"},"uri":{"description":"The product URI to rent the On Demand video.","example":"/ondemand/pages/61326/products/12345","nullable":true,"type":"string"}},"required":["currency","display_price","drm","expires_time","link","price","purchase_time","stream","uri"],"type":"object"},"report":{"description":"Information about where and how to report a video.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"reason":{"description":"A list of valid reasons for reporting a video.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","type":"string"}},"required":["options","reason","uri"],"type":"object"},"subscribe":{"description":"Subscription information for an On Demand video.","nullable":true,"properties":{"drm":{"description":"Whether the On Demand video has DRM.","example":true,"type":"boolean"},"expires_time":{"description":"The time in ISO 8601 format when the subscription expires.","example":"2018-03-05T21:04:47+00:00","type":"string"},"purchase_time":{"description":"The time in ISO 8601 format when the subscription was purchased.","example":"2018-03-02T21:04:47+00:00","type":"string"},"stream":{"description":"The stream type.","example":"purchased","type":"string"}},"type":"object"},"view_team_members":{"description":"Information about whether a user can view the team members associated with a video.","nullable":true,"properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","type":"string"}},"required":["options","uri"],"type":"object"},"watched":{"description":"Information about removing this video from the user's list of watched videos.","properties":{"added":{"description":"Whether the user has watched the video.","example":true,"type":"boolean"},"added_time":{"description":"The time in ISO 8601 format when the user watched the video.","type":"string"},"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","type":"string"}},"required":["added","added_time","options","uri"],"type":"object"},"watchlater":{"description":"Information about whether this video appears on the authenticated user's Watch Later list.","properties":{"added":{"description":"Whether the user has added the video to their Watch later list.","example":true,"type":"boolean"},"added_time":{"description":"The time in ISO 8601 format when the user added the video to their Watch Later list.","type":"string"},"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"uri":{"description":"The API URI that resolves to the connection data.","type":"string"}},"required":["added","added_time","options","uri"],"type":"object"}},"required":["album","buy","channel","delete","edit","like","rent","report","view_team_members","watched","watchlater"],"type":"object"}},"required":["connections","interactions"],"type":"object"},"modified_time":{"description":"The time in ISO 8601 format when the video metadata was last modified.","example":"2018-09-16T09:02:40+00:00","type":"string"},"name":{"description":"The video's title.","example":"Celebrating 10 Years of Staff Picks","type":"string"},"parent_folder":{"allOf":[{"$ref":"#/components/schemas/project"}],"description":"Information about the folder that contains the video.","nullable":true},"password":{"description":"The privacy-enabled password to watch the video. Only the video's owner and those team members with permission can access the video's password. This data requires a bearer token with the `private` scope.","example":"hunter1","type":"string"},"pictures":{"allOf":[{"$ref":"#/components/schemas/picture"}],"description":"The video's active picture."},"privacy":{"description":"The video's privacy setting.","properties":{"add":{"description":"Whether the video can be added to collections.","example":true,"type":"boolean"},"comments":{"description":"The video's comment permission setting:\n\nOption descriptions:\n * `anybody` - Anyone can comment on the video.\n * `contacts` - Only contacts can comment on the video.\n * `nobody` - No one can comment on the video.\n","enum":["anybody","contacts","nobody"],"example":"anybody","type":"string"},"download":{"description":"The video's download permission setting.","example":true,"type":"boolean"},"embed":{"description":"The video's embed permission setting:\n\nOption descriptions:\n * `private` - The video is private.\n * `public` - Anyone can embed the video.\n","enum":["private","public"],"example":"private","type":"string"},"view":{"description":"The general privacy setting of the video:\n\nOption descriptions:\n * `anybody` - Anyone can access the video.\n * `contacts` - Only contacts can access the video.\n * `disable` - The video is hidden from Vimeo.\n * `nobody` - No one besides the owner can access the video.\n * `password` - Anyone with the video's password can access the video.\n * `unlisted` - The video is accessible but not searchable from Vimeo.\n * `users` - Only people with a Vimeo account can access the video.\n","enum":["anybody","contacts","disable","nobody","password","unlisted","users"],"example":"anybody","type":"string"}},"required":["add","comments","download","embed","view"],"type":"object"},"release_time":{"description":"The time in ISO 8601 format when the video was released.","example":"2018-03-05T21:04:47+00:00","type":"string"},"resource_key":{"description":"The resource key string of the video.","example":"bac1033deba2310ebba2caec33c23e4beea67aba","type":"string"},"spatial":{"description":"The video's 360 spatial data.","properties":{"director_timeline":{"description":"The 360 director timeline:","items":{"type":"object","properties":{"pitch":{"description":"The pitch value, from -90 (minimum) to 90 (maximum).","example":70,"type":"number"},"roll":{"description":"The roll value.","example":0,"type":"number"},"time_code":{"description":"The time code.","example":300,"type":"number"},"yaw":{"description":"The yaw value, from 0 (minimum) to 360 (maximum).","example":125,"type":"number"}}},"type":"array"},"field_of_view":{"description":"The 360 field of view, from 30 (minimum) to 90 (maximum). The default is 50.","example":50,"nullable":true,"type":"number"},"projection":{"description":"The 360 spatial projection:\n\nOption descriptions:\n * `cubical` - The spatial projection is cubical.\n * `cylindrical` - The spatial projection is cylindrical.\n * `dome` - The spatial projection is dome-shaped.\n * `equirectangular` - The spatial projection is equirectangular.\n * `pyramid` - The spatial projection is pyramid-shaped.\n","enum":["cubical","cylindrical","dome","equirectangular","pyramid"],"example":"cubical","nullable":true,"type":"string"},"stereo_format":{"description":"The 360 stereo format:\n\nOption descriptions:\n * `left-right` - The stereo format is left-right.\n * `mono` - The audio is monaural.\n * `top-bottom` - The stereo format is top-bottom.\n","enum":["left-right","mono","top-bottom"],"example":"left-right","nullable":true,"type":"string"}},"required":["director_timeline","field_of_view","projection","stereo_format"],"type":"object"},"stats":{"description":"A collection of analytics associated with the video.","properties":{"plays":{"description":"The current total number of times that the video has been played.","example":20,"nullable":true,"type":"number"}},"required":["plays"],"type":"object"},"status":{"description":"The status code for the availability of the video. This field is deprecated in favor of **upload** and **transcode**.\n\nOption descriptions:\n * `available` - The video is available.\n * `quota_exceeded` - The user's quota is exceeded with this video.\n * `total_cap_exceeded` - The user has exceeded their total cap with this video.\n * `transcode_starting` - Transcoding is starting for the video.\n * `transcoding` - Transcoding has started and is currently underway for the video.\n * `transcoding_error` - There was an error in transcoding the video.\n * `unavailable` - The video is unavailable.\n * `uploading` - The video is being uploaded.\n * `uploading_error` - There was an error in uploading the video.\n","enum":["available","quota_exceeded","total_cap_exceeded","transcode_starting","transcoding","transcoding_error","unavailable","uploading","uploading_error"],"example":"available","nullable":true,"type":"string"},"tags":{"description":"An array of all tags assigned to the video.","items":{"$ref":"#/components/schemas/tag"},"type":"array"},"transcode":{"description":"The transcode information of the video upload.","nullable":true,"properties":{"status":{"description":"The status code for the video's availability:\n\nOption descriptions:\n * `complete` - Transcoding is complete. The video is available.\n * `error` - There was a transcoding error. The video isn't available.\n * `in_progress` - Transcoding is currently underway. The video isn't available yet.\n","enum":["complete","error","in_progress"],"example":"complete","type":"string"}},"type":"object"},"type":{"description":"The type of the video.\n\nOption descriptions:\n * `live` - The video is or was a live event.\n * `stock` - The video is a Vimeo Stock video.\n * `video` - The video is a standard Vimeo video.\n","enum":["live","stock","video"],"example":"video","type":"string"},"upload":{"description":"The video's upload information.","nullable":true,"properties":{"approach":{"description":"The approach for uploading the video.","enum":["post","pull","streaming","tus"],"example":"post","type":"string"},"complete_uri":{"description":"The URI for completing the upload.","type":"string"},"form":{"description":"The HTML form for uploading a video through the post approach.","type":"string"},"link":{"description":"The link of the video to capture through the pull approach.","type":"string"},"redirect_url":{"description":"The redirect URL for the upload app.","type":"string"},"size":{"description":"The file size in bytes of the uploaded video.","example":60000,"type":"number"},"status":{"description":"The status code for the availability of the uploaded video:\n\nOption descriptions:\n * `complete` - The upload is complete.\n * `error` - The upload ended with an error.\n * `in_progress` - The upload is underway.\n","enum":["complete","error","in_progress"],"example":"complete","type":"string"},"upload_link":{"description":"The link for sending video file data.","type":"string"}},"required":["status"],"type":"object"},"uri":{"description":"The video's canonical relative URI.","example":"/videos/258684937","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The video's owner.","nullable":true},"vod":{"description":"The Vimeo On Demand information for the video, if applicable.","nullable":true,"type":"object"},"width":{"description":"The video's width in pixels.","example":1920,"type":"number"}},"required":["categories","content_rating","context","created_time","description","duration","embed","height","is_playable","language","license","link","metadata","modified_time","name","pictures","privacy","release_time","resource_key","spatial","stats","status","tags","transcode","type","upload","uri","user","vod","width"],"type":"object"},"video-version":{"title":"Video Version","properties":{"active":{"description":"Whether the video version is currently active.","example":true,"type":"boolean"},"app":{"allOf":[{"$ref":"#/components/schemas/api-app"}],"description":"The API app associated with the video version."},"created_time":{"description":"The time in ISO 8601 when the video version was created.","example":"2018-03-05T21:04:47+00:00","type":"string"},"duration":{"description":"The duration in seconds of the video version.","example":81,"nullable":true,"type":"number"},"filename":{"description":"The file name of the video version.","example":"rev2.mp4","type":"string"},"filesize":{"description":"The size in byes of the video version file.","example":4025322521,"nullable":true,"type":"number"},"metadata":{"description":"The video version's metadata.","properties":{"connections":{"properties":{"video":{"description":"Data from the video associated with the version.","properties":{"options":{"description":"An array of HTTP methods permitted on this URI.","items":{"type":"string"},"type":"array"},"total":{"description":"The total number of videos on this connection.","example":5,"type":"number"},"uri":{"description":"The API URI that resolves to the connection data.","example":"/videos/258684937","type":"string"}},"required":["options","total","uri"],"type":"object"}},"required":["video"],"type":"object"}},"required":["connections"],"type":"object"},"modified_time":{"description":"The time in ISO 8601 format when the video version was last modified.","example":"2018-09-16T09:02:40+00:00","type":"string"},"upload":{"description":"The version's upload information.","nullable":true,"properties":{"approach":{"description":"The approach for uploading the video.","enum":["post","pull","streaming","tus"],"example":"post","type":"string"},"complete_uri":{"description":"The URI for completing the upload.","type":"string"},"form":{"description":"The HTML form for uploading a video through the post approach.","type":"string"},"link":{"description":"The link of the video to capture through the pull approach.","type":"string"},"redirect_url":{"description":"The redirect URL for the upload app.","type":"string"},"size":{"description":"The file size in bytes of the uploaded video.","example":60000,"type":"number"},"status":{"description":"The status code for the availability of the uploaded video:\n\nOption descriptions:\n * `complete` - The upload is complete.\n * `error` - The upload ended with an error.\n * `in_progress` - The upload is underway.\n","enum":["complete","error","in_progress"],"example":"complete","type":"string"},"upload_link":{"description":"The link for sending video file data.","type":"string"}},"required":["status"],"type":"object"},"upload_date":{"description":"The time in ISO 8601 format when the video version was uploaded.","example":"2018-09-16T09:02:40+00:00","nullable":true,"type":"string"},"uri":{"description":"The version's canonical relative URI.","example":"/videos/258684937/versions/12345","type":"string"},"user":{"allOf":[{"$ref":"#/components/schemas/user"}],"description":"The owner of the video version.","nullable":true}},"required":["active","app","created_time","duration","filename","filesize","metadata","modified_time","upload","upload_date","uri","user"],"type":"object"}}},"security":[{"oauth2":["create","delete","edit","email","interact","private","promo_codes","public","purchase","purchased","stats","upload","video_files"]}]}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment