Skip to content
Talk to an Engineer Dashboard

Vimeo

Connect to Vimeo API v3.4. Upload and manage videos, organize content into showcases and folders, manage channels, handle comments, likes, and webhooks.

Connect to Vimeo API v3.4. Upload and manage videos, organize content into showcases and folders, manage channels, handle comments, likes, and webhooks.

Vimeo logo

Supports authentication: OAuth 2.0

Register your Vimeo app credentials with Scalekit so it can manage the OAuth 2.0 authentication flow and token lifecycle on your behalf. You’ll need a Client Identifier and Client Secret from the Vimeo Developer Portal.

  1. Create a Vimeo app

    • Go to the Vimeo Developer Portal and click Create an app in the top-right corner.

    • Fill in the required fields:

      • App name — enter a name for your app (e.g., Scalekit-Auth)
      • Brief description — describe what the app does
      • Select Yes under “Will people besides you be able to access your app?” to allow other Vimeo accounts to authenticate
      • Check the box to agree to the Vimeo API License Agreement and Terms of Service
      Vimeo Create a new app form filled with Scalekit-Auth details
    • Click Create App.

  2. Copy your Client Identifier

    After creating the app, you are taken to the app’s settings page. Copy the Client identifier — you’ll need it in a later step.

    Vimeo app settings page showing the Client Identifier
  3. Create a connection in Scalekit

    • In Scalekit dashboard, go to Agent AuthCreate Connection. Search for Vimeo and click Create.

      Searching for Vimeo in Scalekit Create Connection
    • Copy the Redirect URI from the connection configuration panel. It looks like https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback.

      Configure Vimeo Connection panel showing Redirect URI, Client ID, Client Secret, and Scopes fields
  4. Configure the callback URL in Vimeo

    • Back in the Vimeo Developer Portal, open your app and click Edit settings.

    • Paste the Scalekit Redirect URI into the App URL field and the Your callback URLs field.

    • Click Add secret under Client secrets to generate a new client secret. Copy the secret value.

      Vimeo app settings with callback URL and client secret configured
    • Click Update to save.

  5. Add credentials in Scalekit

    • In Scalekit dashboard, go to Agent AuthConnections and open the Vimeo connection you created.

    • Enter your credentials:

      • Client ID — the Client Identifier from your Vimeo app
      • Client Secret — the secret you generated in step 4
      • Scopes — select the scopes your app needs (e.g., create, delete, edit, interact, private, public)
    • Click Save.

Retrieve all top-level Vimeo content categories (e.g., Animation, Documentary, Music). Requires public scope.

NameTypeRequiredDescription
directionstringNoSort direction
pageintegerNoPage number of results
per_pageintegerNoNumber of categories per page
sortstringNoSort order for categories

Retrieve all videos in a specific Vimeo channel. Requires public scope.

NameTypeRequiredDescription
channel_idstringYesVimeo channel ID or slug
directionstringNoSort direction
filterstringNoFilter videos by type
pageintegerNoPage number of results
per_pageintegerNoNumber of videos per page
querystringNoSearch query to filter channel videos
sortstringNoSort order for videos

Retrieve a list of Vimeo channels. Can list all public channels or channels the authenticated user follows/manages. Requires public scope.

NameTypeRequiredDescription
directionstringNoSort direction
filterstringNoFilter channels by type
pageintegerNoPage number of results
per_pageintegerNoNumber of channels per page
querystringNoSearch query to filter channels by name
sortstringNoSort order for channels

Create a new folder (project) in the authenticated user’s Vimeo account for organizing private video content. Requires create scope.

NameTypeRequiredDescription
namestringYesName of the new folder
parent_folder_uristringNoURI of the parent folder to nest this folder inside

Move or add a video into a Vimeo folder (project). Requires edit scope.

NameTypeRequiredDescription
folder_idstringYesFolder (project) ID to add the video to
video_idstringYesVideo ID to add to the folder

Retrieve all videos inside a specific Vimeo folder (project). Requires private scope.

NameTypeRequiredDescription
directionstringNoSort direction
filterstringNoFilter videos by type
folder_idstringYesFolder (project) ID to list videos from
pageintegerNoPage number of results
per_pageintegerNoNumber of videos per page
querystringNoSearch query to filter videos by name
sortstringNoSort order for videos

Retrieve all folders (projects) owned by the authenticated Vimeo user for organizing private video libraries. Requires private scope.

NameTypeRequiredDescription
directionstringNoSort direction
pageintegerNoPage number of results
per_pageintegerNoNumber of folders per page
querystringNoSearch query to filter folders by name
sortstringNoSort order for folders

Retrieve a list of Vimeo users that the authenticated user is following. Requires private scope.

NameTypeRequiredDescription
directionstringNoSort direction
filterstringNoFilter following list by type
pageintegerNoPage number of results
per_pageintegerNoNumber of users per page
querystringNoSearch query to filter following list by name
sortstringNoSort order

Retrieve all videos liked by the authenticated Vimeo user. Requires private scope.

NameTypeRequiredDescription
directionstringNoSort direction
filterstringNoFilter liked videos by type
pageintegerNoPage number of results
per_pageintegerNoNumber of videos per page
sortstringNoSort order for liked videos

Retrieve the authenticated Vimeo user’s profile including account type, bio, location, stats, and links. Requires a valid Vimeo OAuth2 connection.

Retrieve all videos uploaded by the authenticated Vimeo user. Supports filtering, sorting, and pagination. Requires private scope.

NameTypeRequiredDescription
containing_uristringNoFilter videos that contain a specific URI
directionstringNoSort direction
filterstringNoFilter videos by type
pageintegerNoPage number of results
per_pageintegerNoNumber of videos per page
querystringNoSearch query to filter videos by title or description
sortstringNoSort order for video results

Create a new showcase (album) on Vimeo for organizing videos. Supports privacy, password protection, branding, and embed settings. Requires create scope.

NameTypeRequiredDescription
brand_colorstringNoHex color code for showcase branding
descriptionstringNoDescription of the showcase
hide_navbooleanNoWhether to hide Vimeo navigation in the showcase
hide_upcomingbooleanNoWhether to hide upcoming live events in the showcase
namestringYesName/title of the showcase
passwordstringNoPassword for the showcase when privacy is set to ‘password’
privacystringNoPrivacy setting for the showcase
review_modebooleanNoEnable review mode for the showcase
sortstringNoDefault sort for videos in the showcase

Add a video to a Vimeo showcase. Requires edit scope and ownership of both the showcase and the video.

NameTypeRequiredDescription
album_idstringYesShowcase (album) ID to add the video to
video_idstringYesVideo ID to add to the showcase

Retrieve all videos in a specific Vimeo showcase. Requires private scope.

NameTypeRequiredDescription
album_idstringYesShowcase (album) ID
directionstringNoSort direction
pageintegerNoPage number of results
per_pageintegerNoNumber of videos per page
sortstringNoSort order for videos

Retrieve all showcases (formerly albums) owned by the authenticated Vimeo user. Requires private scope.

NameTypeRequiredDescription
directionstringNoSort direction
pageintegerNoPage number of results
per_pageintegerNoNumber of showcases per page
querystringNoSearch query to filter showcases by name
sortstringNoSort order for showcases

Follow a Vimeo user on behalf of the authenticated user. Requires interact scope.

NameTypeRequiredDescription
follow_user_idstringYesVimeo user ID to follow

Retrieve public profile information for any Vimeo user by their user ID or username. Requires public scope.

NameTypeRequiredDescription
user_idstringYesVimeo user ID or username

Retrieve all public videos uploaded by a specific Vimeo user. Supports filtering and pagination. Requires public scope.

NameTypeRequiredDescription
directionstringNoSort direction
filterstringNoFilter results by video type
pageintegerNoPage number of results
per_pageintegerNoNumber of videos per page
querystringNoSearch query to filter videos
sortstringNoSort order for video results
user_idstringYesVimeo user ID or username

Post a comment on a Vimeo video on behalf of the authenticated user. Requires interact scope.

NameTypeRequiredDescription
textstringYesComment text to post
video_idstringYesVimeo video ID to comment on

Retrieve all comments posted on a specific Vimeo video. Requires public scope.

NameTypeRequiredDescription
directionstringNoSort direction
pageintegerNoPage number of results
per_pageintegerNoNumber of comments per page
video_idstringYesVimeo video ID to list comments from

Permanently delete a Vimeo video. This action is irreversible. Requires delete scope and ownership of the video.

NameTypeRequiredDescription
video_idstringYesVimeo video ID to delete

Update the metadata of an existing Vimeo video including title, description, privacy settings, tags, and content rating. Requires edit scope.

NameTypeRequiredDescription
content_ratingstringNoContent rating of the video
descriptionstringNoNew description for the video
licensestringNoCreative Commons license to apply
namestringNoNew title for the video
passwordstringNoPassword for the video when privacy view is set to ‘password’
privacy_addbooleanNoWhether users can add the video to their showcases or channels
privacy_commentsstringNoWho can comment on the video
privacy_downloadbooleanNoWhether users can download the video
privacy_embedstringNoWho can embed the video
privacy_viewstringNoWho can view the video
video_idstringYesVimeo video ID to edit

Retrieve detailed information about a specific Vimeo video including metadata, privacy settings, stats, and embed details. Requires a valid Vimeo OAuth2 connection.

NameTypeRequiredDescription
video_idstringYesVimeo video ID

Like a Vimeo video on behalf of the authenticated user. Use PUT /me/likes/&#123;video_id&#125; to like. Requires interact scope.

NameTypeRequiredDescription
video_idstringYesVimeo video ID to like

Retrieve all tags applied to a specific Vimeo video. Requires public scope.

NameTypeRequiredDescription
video_idstringYesVimeo video ID to list tags from

Search for public videos on Vimeo using keywords and filters. Returns paginated video results with metadata. Requires a valid Vimeo OAuth2 connection with public scope.

NameTypeRequiredDescription
directionstringNoSort direction for results
filterstringNoFilter results by video type
pageintegerNoPage number of results to return
per_pageintegerNoNumber of results to return per page
querystringYesSearch query keywords
sortstringNoSort order for search results

Add a video to the authenticated user’s Vimeo Watch Later queue. Requires interact scope.

NameTypeRequiredDescription
video_idstringYesVimeo video ID to add to Watch Later

Retrieve all videos in the authenticated user’s Vimeo Watch Later queue. Requires private scope.

NameTypeRequiredDescription
directionstringNoSort direction
filterstringNoFilter by video type
pageintegerNoPage number of results
per_pageintegerNoNumber of videos per page
sortstringNoSort order for watch later videos

Register a new webhook endpoint to receive real-time Vimeo event notifications. Supports events for video uploads, transcoding, privacy changes, and comments. Requires private scope.

NameTypeRequiredDescription
event_typesarray<string>YesList of event types that will trigger this webhook
urlstringYesHTTPS URL that Vimeo will send webhook POST requests to

Delete a registered Vimeo webhook endpoint so it no longer receives event notifications. Requires private scope.

NameTypeRequiredDescription
webhook_idstringYesWebhook ID to delete

Retrieve all webhooks registered for the authenticated Vimeo application. Requires private scope.

NameTypeRequiredDescription
pageintegerNoPage number of results
per_pageintegerNoNumber of webhooks per page