Videos\essentials 2 endpoints

GET /videos/{video_id}

This method returns a single video.

operationId: get_video

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The video was returned.

404

No such video exists.

GET /videos/{video_id}
PATCH /videos/{video_id}

This method edits the specified video.

operationId: edit_video

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Request Body

required
application/vnd.vimeo.video+json
schema EditVideoRequest
Property Type Required
name string optional
embed object optional
cards array optional
id string optional
url string optional
teaser string optional
headline string optional
timecode number optional
image_url string optional
display_time number optional
color string optional
logos object optional
vimeo boolean optional
custom object optional
id number optional
link string optional
active boolean optional
sticky boolean optional
title object optional
name string optional
owner string optional
portrait string optional
volume boolean optional
airplay boolean optional
buttons object optional
hd boolean optional
like boolean optional
embed boolean optional
share boolean optional
scaling boolean optional
fullscreen boolean optional
watchlater boolean optional
playbar boolean optional
chapters boolean optional
chromecast boolean optional
end_screen object optional
type string optional
transcript boolean optional
play_button object optional
position string optional
audio_tracks boolean optional
closed_captions boolean optional
quality_selector boolean optional
locale string optional
license string optional
privacy object optional
add boolean optional
view string optional
embed string optional
comments string optional
download boolean optional
spatial object optional
projection string optional
field_of_view number optional
stereo_format string optional
director_timeline array optional
yaw number required
roll number optional
pitch number required
time_code number required
password string optional
custom_url string optional
description string optional
review_page object optional
active boolean optional
embed_domains array optional
content_rating array optional
hide_from_vimeo boolean optional
embed_domains_add array optional
embed_domains_delete array optional

Responses

200

The video was edited.

400

A parameter is invalid.

403
  • The authenticated user doesn’t own the video.
  • The privacy field is disable, and the authenticated user can’t set extra embed options.
  • The privacy field is contacts, and the authenticated user can’t follow creators.
  • The authenticated user has an opted-out Pro account, and privacy.view is users, password, nobody, or public.
PATCH /videos/{video_id}

Videos\fragments 3 endpoints

DELETE /videos/{video_id}/fragments

This method deletes all fragments for the specified video.

operationId: delete_fragments

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

204

The fragments were deleted.

DELETE /videos/{video_id}/fragments
GET /videos/{video_id}/fragments

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

operationId: get_fragments

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The fragments were returned.

GET /videos/{video_id}/fragments
PUT /videos/{video_id}/fragments

This method updates the specified video with new fragments.

operationId: put_fragments

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

204

The fragments were updated.

PUT /videos/{video_id}/fragments

Videos\languages 1 endpoints

GET /languages

This method returns all available video languages.

operationId: get_languages

Parameters

Name In Required Type Description
filter query optional string

The attribute by which to filter the results.

Option descriptions:

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

The page number of the results to show.

per_page query optional number

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

Responses

200

The languages were returned.

GET /languages

Videos\livem3u8playback 2 endpoints

GET /me/videos/{video_id}/m3u8_playback

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

operationId: VideosLiveM3U8Playback_getPlaybackUrl

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The M3U8 playback URL was returned.

401

Error code 8000: The user credentials are invalid.

403

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

404

Error code 5000: No such event or user exists.

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

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

operationId: VideosLiveM3U8Playback_getPlaybackUrlForEventStream

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

video_id path required number

The ID of the video.

Responses

200

The M3U8 playback URL was returned.

401

Error code 8000: The user credentials are invalid.

403

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

404

Error code 5000: No such event or user exists.

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

Videos\nondestructivetrimming 2 endpoints

GET /videos/{video_id}/trim

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

operationId: clip_trim

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The status of the trim operation was returned or updated.

401

Error code 8003: The user credentials are invalid.

403

Error code 3411: The authenticated user is unverified.

GET /videos/{video_id}/trim
POST /videos/{video_id}/trim

This method starts a trim operation for the specified video.

operationId: clip_trim

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Request Body

application/json
schema ClipTrimRequest
Property Type Required
trim_end string optional
trim_start string optional

Responses

200

The status of the trim operation was returned or updated.

401

Error code 8003: The user credentials are invalid.

403

Error code 3411: The authenticated user is unverified.

POST /videos/{video_id}/trim

Videos\recommendations 1 endpoints

GET /videos/{video_id}/videos

This method returns every related video of the specified video.

operationId: VideosRecommendations_getRelatedVideos

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

filter query optional string

The attribute by which to filter the results.

Option descriptions:

  • related - Return related videos.
page query optional number

The page number of the results to show.

per_page query optional number

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

Responses

200

The related videos were returned.

400

The value of filter isn’t related.

GET /videos/{video_id}/videos

Videos\showcases 2 endpoints

GET /videos/{video_id}/albums

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

operationId: VideosShowcases_getAllContShowcases

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

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

Responses

200

The showcases were returned.

404

Error code 3433: No such video exists.

GET /videos/{video_id}/albums
PATCH /videos/{video_id}/albums

This method adds or removes the specified video to or from multiple showcases.

operationId: VideosShowcases_addToMultipleShowcases

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Request Body

application/vnd.vimeo.album+json
schema VideosShowcasesAddToMultipleShowcasesRequest
Property Type Required
add array optional
uri string optional
remove array optional
uri string optional

Responses

200

The videos were added or removed.

404

Error code 3433: No such video exists.

PATCH /videos/{video_id}/albums

Videos\tags 6 endpoints

GET /tags/{word}/videos

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

operationId: VideosTags_getAllByTag

Parameters

Name In Required Type Description
word path required string

The tag word.

direction query optional string

The sort direction of the results.

Option descriptions:

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

The page number of the results to show.

per_page query optional number

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

sort query optional string

The way to sort the results.

Option descriptions:

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

Responses

200

The videos were returned.

404

No such tag exists.

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

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

operationId: VideosTags_getVideoTags

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

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

Responses

200

The tags were returned.

GET /videos/{video_id}/tags
PUT /videos/{video_id}/tags

This method adds multiple tags to the specified video. Include the tags as a JSON array as the body of the request with the name field, like this: [{ "name": "funny"}, {"name": "concert" }]. The authenticated user must have edit access to the video. For more information on batch requests like this one, see Using Common Formats and Parameters.

operationId: VideosTags_addMultiple

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

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

Responses

200

The tags were added.

400
  • The request body wasn’t supplied.
  • A parameter is invalid.
  • The request body doesn’t contain a JSON-encoded list of tags.
403
  • The authenticated user can’t add tags to this video.
  • The total number of tags can’t exceed 20.
PUT /videos/{video_id}/tags
DELETE /videos/{video_id}/tags/{word}

This method removes the specified tag from a video. The authenticated user must have edit access to the video.

operationId: VideosTags_removeTag

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

word path required string

The tag word.

Responses

204

The tag was removed.

400
  • A parameter is invalid.
  • The tag is invalid.
DELETE /videos/{video_id}/tags/{word}
GET /videos/{video_id}/tags/{word}

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

operationId: VideosTags_checkTagVideo

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

word path required string

The tag word.

Responses

200

The tag has been added to the video.

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

The video has no such tag.

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

This method adds a single tag to the specified video. The authenticated user must be the owner of the video.

operationId: VideosTags_addTagToVideo

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

word path required string

The tag word.

Responses

200

The tag was added.

400
  • The tag is invalid.
  • An unsupported parameter was supplied.
403

The total number of tags can’t exceed 20.

PUT /videos/{video_id}/tags/{word}

Videos\texttracks 7 endpoints

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

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

operationId: VideosTextTracks_getAllTracks

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

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

Responses

200

The text tracks were returned.

404

No such video exists.

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

This method adds a text track to the specified video. For more information, see Working with Text Track Uploads.

operationId: VideosTextTracks_addTextTrackToVideo

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

Request Body

required
application/vnd.vimeo.video.texttrack+json
schema VideosTextTracksAddTextTrackToVideoRequest
Property Type Required
name string required
type string required
active boolean optional
language string required
is_edited boolean optional
is_auto_generated boolean optional

Responses

201

The text track was added.

403
  • The authenticated user can’t add the text track.
  • Error code 2204: The request contains errors.
POST /channels/{channel_id}/videos/{video_id}/texttracks
GET /videos/{video_id}/texttracks

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

operationId: VideosTextTracks_getAllVideoTracks

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

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

Responses

200

The text tracks were returned.

404

No such video exists.

GET /videos/{video_id}/texttracks
POST /videos/{video_id}/texttracks

This method adds a text track to the specified video. For more information, see Working with Text Track Uploads.

operationId: VideosTextTracks_addTextTrack

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Request Body

required
application/vnd.vimeo.video.texttrack+json
schema VideosTextTracksAddTextTrackRequest
Property Type Required
name string required
type string required
active boolean optional
language string required
is_edited boolean optional
is_auto_generated boolean optional

Responses

201

The text track was added.

403
  • The authenticated user can’t add the text track.
  • Error code 2204: The request contains errors.
POST /videos/{video_id}/texttracks
DELETE /videos/{video_id}/texttracks/{texttrack_id}

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

operationId: VideosTextTracks_deleteTextTrack

Parameters

Name In Required Type Description
texttrack_id path required number

The ID of the text track.

video_id path required number

The ID of the video.

Responses

204

The text track was deleted.

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

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

operationId: VideosTextTracks_getSpecificTextTrack

Parameters

Name In Required Type Description
texttrack_id path required number

The ID of the text track.

video_id path required number

The ID of the video.

Responses

200

The text track was returned.

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

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

operationId: VideosTextTracks_editTextTrack

Parameters

Name In Required Type Description
texttrack_id path required number

The ID of the text track.

video_id path required number

The ID of the video.

Request Body

application/vnd.vimeo.video.texttrack+json
schema VideosTextTracksEditTextTrackRequest
Property Type Required
name string optional
type string optional
active boolean optional
language string optional

Responses

200

The text track was edited.

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

Videos\thumbnails 7 endpoints

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

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

operationId: VideosThumbnails_getAllByVideoId

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

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

Responses

200

The thumbnails were returned.

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

This method adds a thumbnail image to the specified video. The authenticated user must have team permissions for the video.

operationId: VideosThumbnails_addThumbnailToVideo

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

Request Body

application/vnd.vimeo.picture+json
schema VideosThumbnailsAddThumbnailToVideoRequest
Property Type Required
time number optional
active boolean optional

Responses

201

The thumbnail was created.

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

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

operationId: VideosThumbnails_getAllByVideoId

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

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

Responses

200

The thumbnails were returned.

GET /videos/{video_id}/pictures
POST /videos/{video_id}/pictures

This method adds a thumbnail image to the specified video. The authenticated user must have team permissions for the video.

operationId: VideosThumbnails_addThumbnailToVideo

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Request Body

application/vnd.vimeo.picture+json
schema VideosThumbnailsAddThumbnailToVideoRequest1
Property Type Required
time number optional
active boolean optional

Responses

201

The thumbnail was created.

POST /videos/{video_id}/pictures
DELETE /videos/{video_id}/pictures/{picture_id}

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

operationId: VideosThumbnails_deleteThumbnailFromVideo

Parameters

Name In Required Type Description
picture_id path required number

The ID of the thumbnail.

video_id path required number

The ID of the video.

Responses

204

The thumbnail was deleted.

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

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

operationId: VideosThumbnails_getThumbnailFromVideo

Parameters

Name In Required Type Description
picture_id path required number

The ID of the thumbnail.

video_id path required number

The ID of the video.

Responses

200

The thumbnail was returned.

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

This method edits the specified video thumbnail image. The authenticated user must be the owner of the thumbnail.

operationId: VideosThumbnails_editThumbnailImage

Parameters

Name In Required Type Description
picture_id path required number

The ID of the thumbnail.

video_id path required number

The ID of the video.

Request Body

application/vnd.vimeo.picture+json
schema VideosThumbnailsEditThumbnailImageRequest
Property Type Required
active boolean optional

Responses

200

The thumbnail was edited.

PATCH /videos/{video_id}/pictures/{picture_id}

Videos\transcripts 1 endpoints

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

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

operationId: get_transcript

Parameters

Name In Required Type Description
texttrack_id path required number

The ID of the text track.

video_id path required number

The ID of the video.

Responses

200

The transcript segments were returned.

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

Videos\unlistedvideos 6 endpoints

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

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

operationId: VideosUnlistedVideos_listAccessibleUsers

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

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

Responses

200

The users were returned.

400

No users can access this unlisted video.

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

This method gives multiple users permission to access the specified unlisted video. The authenticated user must be the owner of the video. The body of the request should follow our batch request format: each object must contain a single uri field whose value is the URI of the user who can access the video.

operationId: VideosUnlistedVideos_grantAccessToUsers

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

Responses

200

The users have been granted access to the unlisted video.

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

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

operationId: VideosUnlistedVideos_listAccessibleUsers

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

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

Responses

200

The users were returned.

400

No users can access this unlisted video.

GET /videos/{video_id}/privacy/users
PUT /videos/{video_id}/privacy/users

This method gives multiple users permission to access the specified unlisted video. The authenticated user must be the owner of the video. The body of the request should follow our batch request format: each object must contain a single uri field whose value is the URI of the user who can access the video.

operationId: VideosUnlistedVideos_grantAccessToUsers

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Responses

200

The users have been granted access to the unlisted video.

PUT /videos/{video_id}/privacy/users
DELETE /videos/{video_id}/privacy/users/{user_id}

This method prevents a user from being able to view the specified unlisted video. The authenticated user must be the owner of the video.

operationId: VideosUnlistedVideos_restrictUserAccess

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

video_id path required number

The ID of the video.

Responses

204

The user has been restricted from accessing the unlisted video.

403

The video isn’t set to a user-defined access list.

404

No such user exists.

DELETE /videos/{video_id}/privacy/users/{user_id}
PUT /videos/{video_id}/privacy/users/{user_id}

This method gives a single user permission to access the specified unlisted video. The authenticated user must be the owner of the video.

operationId: VideosUnlistedVideos_grantUserAccess

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

video_id path required number

The ID of the video.

Responses

200

The user has been granted access to the unlisted video.

204

The user can already access this unlisted video.

403

The video doesn’t have a user-defined access list.

PUT /videos/{video_id}/privacy/users/{user_id}

Videos\uploads 4 endpoints

POST /me/videos

This method begins the video upload process for the authenticated user. For more information, see our upload documentation.

operationId: VideosUploads_beginVideoUploadProcess

Request Body

required
application/vnd.vimeo.video+json
schema VideosUploadsBeginVideoUploadProcessRequest
Property Type Required
name string optional
embed object optional
color string optional
logos object optional
vimeo boolean optional
custom object optional
link string optional
active boolean optional
sticky boolean optional
title object optional
name string optional
owner string optional
portrait string optional
volume boolean optional
buttons object optional
hd boolean optional
like boolean optional
embed boolean optional
share boolean optional
scaling boolean optional
fullscreen boolean optional
watchlater boolean optional
playbar boolean optional
end_screen object optional
type string optional
locale string optional
upload object required
link string optional
size string optional
approach string required
redirect_url string optional
license string optional
privacy object optional
add boolean optional
view string optional
embed string optional
comments string optional
download boolean optional
spatial object optional
projection string optional
field_of_view number optional
stereo_format string optional
director_timeline array optional
yaw number required
roll number optional
pitch number required
time_code number required
password string optional
folder_uri string optional
description string optional
review_page object optional
active boolean optional
embed_domains array optional
content_rating array optional
hide_from_vimeo boolean optional

Responses

201

The upload procedure has begun.

400
  • Error code 2204: The request contains invalid body parameters.
  • Error code 2205: The body of the request isn’t formatted properly.
  • Error code 2230: The upload type is invalid.
  • Error code 3116: The type payload parameter was supplied instead of upload.approach. Use upload.approach starting from API version 3.4.
401

Error code 8002: No user is associated with the access token.

403
  • Error code 4101: The authenticated user’s maximum disk space has been reached.
  • Error code 4102: The authenticated user’s allotted weekly quota has been reached.
  • Error code 4104: The authenticated user’s allotted daily quota has been reached.
500

Error code 4003: There is a problem initiating the upload.

POST /me/videos
DELETE /users/{user_id}/uploads/{upload_id}

This method completes the specified streaming upload of the authenticated user.

operationId: VideosUploads_completeStreamingUpload

Parameters

Name In Required Type Description
upload_id path required number

The ID of the streaming upload.

user_id path required number

The ID of the user.

signature query required string

The crypto signature of the completed upload.

video_file_id query required number

The ID of the uploaded file.

Responses

201

The streaming upload has been completed.

400

Error code 2502: The format of the video file is invalid.

404
  • Error code 5006: No such video file exists.
  • Error code 5007: No such signature exists.
  • Error code 8400: The signature is invalid.
500

Error code 4011: The upload server returned an HTTP status code other than 200.

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

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

operationId: VideosUploads_getUploadAttempt

Parameters

Name In Required Type Description
upload_id path required number

The ID of the upload attempt.

user_id path required number

The ID of the user.

Responses

200

The upload attempt was returned.

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

This method begins the video upload process for the authenticated user. For more information, see our upload documentation.

operationId: upload_video

Parameters

Name In Required Type Description
user_id path required number

The ID of the user.

Request Body

required
application/vnd.vimeo.video+json
schema UploadVideoRequest
Property Type Required
name string optional
embed object optional
color string optional
logos object optional
vimeo boolean optional
custom object optional
link string optional
active boolean optional
sticky boolean optional
title object optional
name string optional
owner string optional
portrait string optional
volume boolean optional
buttons object optional
hd boolean optional
like boolean optional
embed boolean optional
share boolean optional
scaling boolean optional
fullscreen boolean optional
watchlater boolean optional
playbar boolean optional
end_screen object optional
type string optional
locale string optional
upload object required
link string optional
size string optional
approach string required
redirect_url string optional
license string optional
privacy object optional
add boolean optional
view string optional
embed string optional
comments string optional
download boolean optional
spatial object optional
projection string optional
field_of_view number optional
stereo_format string optional
director_timeline array optional
yaw number required
roll number optional
pitch number required
time_code number required
password string optional
folder_uri string optional
description string optional
review_page object optional
active boolean optional
embed_domains array optional
content_rating array optional
hide_from_vimeo boolean optional

Responses

201

The upload procedure has begun.

400
  • Error code 2204: The request contains invalid body parameters.
  • Error code 2205: The body of the request isn’t formatted properly.
  • Error code 2230: The upload type is invalid.
  • Error code 3116: The type payload parameter was supplied instead of upload.approach. Use upload.approach starting from API version 3.4.
401

Error code 8002: No user is associated with the access token.

403
  • Error code 4101: The authenticated user’s maximum disk space has been reached.
  • Error code 4102: The authenticated user’s allotted weekly quota has been reached.
  • Error code 4104: The authenticated user’s allotted daily quota has been reached.
500

Error code 4003: There is a problem initiating the upload.

POST /users/{user_id}/videos

Videos\versions 6 endpoints

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

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

operationId: VideosVersions_getAllVideoVersions

Parameters

Name In Required Type Description
channel_id path required number

The ID of the channel.

video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

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

Responses

200

The versions were returned.

401

Error code 8003: The user credentials are invalid.

404

No such video exists.

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

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

operationId: VideosVersions_getAllVideoVersions

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

page query optional number

The page number of the results to show.

per_page query optional number

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

Responses

200

The versions were returned.

401

Error code 8003: The user credentials are invalid.

404

No such video exists.

GET /videos/{video_id}/versions
POST /videos/{video_id}/versions

This method adds a version to the specified video. The authenticated user must be the owner of the video.

operationId: VideosVersions_addVideoVersion

Parameters

Name In Required Type Description
video_id path required number

The ID of the video.

Request Body

required
application/vnd.vimeo.video.version+json
schema VideosVersionsAddVideoVersionRequest
Property Type Required
upload object required
link string optional
size string optional
approach string required
redirect_url string optional
file_name string required

Responses

201

The version was added.

400

Error code 2204: The request input contains invalid version data.

403
  • Error code 3427: The authenticated user can’t edit the video.
  • Error code 4104: The authenticated user’s allotted daily quota has been reached.
404
  • Error code 5011: An upload isn’t associated with this version.
  • Error code 5012: A video isn’t associated with this upload.
  • 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.
POST /videos/{video_id}/versions
DELETE /videos/{video_id}/versions/{version_id}

This method deletes the specified version from a video. The authenticated user must be the owner of the video.

operationId: VideosVersions_deleteVideoVersion

Parameters

Name In Required Type Description
version_id path required number

The ID of the video version.

video_id path required number

The ID of the video.

Responses

204

The video version was deleted.

404
  • No such video exists.
  • Error code 2523: The version isn’t associated with the video.
  • Error code 2538: The specified version is the video’s current version and can’t be deleted.
  • Error code 3200: The authenticated user can’t access the versions of this video.
  • Error code 8003: The user credentials are invalid.
DELETE /videos/{video_id}/versions/{version_id}
GET /videos/{video_id}/versions/{version_id}

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

operationId: VideosVersions_getSpecificVersion

Parameters

Name In Required Type Description
version_id path required number

The ID of the video version.

video_id path required number

The ID of the video.

Responses

200

The video version was returned.

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

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

operationId: VideosVersions_editVideoVersion

Parameters

Name In Required Type Description
version_id path required number

The ID of the video version.

video_id path required number

The ID of the video.

Request Body

application/vnd.vimeo.video.version+json
schema VideosVersionsEditVideoVersionRequest
Property Type Required
is_current boolean optional
description string optional

Responses

200

The version was edited.

401

Error code 8003: The user credentials are invalid.

404
  • No such video exists.
  • Error code 2205: A parameter is invalid.
  • Error code 3200: The authenticated user can’t access the versions of this video.
PATCH /videos/{video_id}/versions/{version_id}
Load more endpoints