> ## Documentation Index
> Fetch the complete documentation index at: https://docs.atako.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Vimeo

> Connect Vimeo to your Atako agents — 10 read and 4 write actions.

Let your agents read your Vimeo account, videos, folders, showcases, comments, text tracks and chapters, update video titles, descriptions and privacy, add videos to showcases, post comments and import a video from a public URL.

## Connection

* **Authentication**: API key (Personal access token).

<Note>
  Sign in at developer.vimeo.com → My Apps → Create an app (if you have none) → click your app's name → "Generate an access token" → select "Authenticated (you)" → check the scopes "public" and "private" (reading), "edit" (update videos, add to showcases), "interact" (post comments) and "upload" (import from a URL) → Generate, then copy the token.

  See [Vimeo's documentation](https://developer.vimeo.com/apps).
</Note>

## Read actions (10)

| Action | Description |
| - | - |
| `get_me` | Get the connected Vimeo account: uri (its "/users/\<id>"), name, profile link, membership, upload quota and video/showcase/folder counts. No arguments. |
| `get_video` | Get one video: title, description, link, duration, status, privacy, tags, play count (stats.plays) and comment/text-track counts. Argument: video\_id (numeric id, integer or digit string — last segment of the video uri). |
| `list_chapters` | List a video's chapters: title and timecode (seconds from the start). Arguments: video\_id (numeric id, required); optional page (integer ≥ 1), per\_page (integer 1–100). |
| `list_folder_videos` | List the videos in a folder. Arguments: project\_id (numeric folder id from list\_folders, required); optional query (string), include\_subfolders (boolean), sort ("alphabetical" \| "date" \| "default" \| "duration" \| "last\_user\_action\_event\_date"), direction ("asc" \| "desc"), page (integer ≥ 1), per\_page (integer 1–100). |
| `list_folders` | List the account's folders (called projects in the API; needs the private scope). Optional arguments: query (string, search by name), sort ("date" \| "default" \| "modified\_time" \| "name" \| "pinned\_on"), direction ("asc" \| "desc"), page (integer ≥ 1), per\_page (integer 1–100). A folder's id (project\_id) is the last segment of its uri ("/users/\<user>/projects/\<id>"). |
| `list_my_videos` | List the connected account's own videos (any privacy). Optional arguments: query (string, search in title, description, chapters and tags), filter\_tag (string, comma-separated tags; a video matches if it has at least one), sort ("alphabetical" \| "date" \| "default" \| "duration" \| "last\_user\_action\_event\_date" \| "likes" \| "modified\_time" \| "plays"), direction ("asc" \| "desc"), page (integer ≥ 1), per\_page (integer 1–100). Each video's id is the last segment of its uri ("/videos/\<id>"). |
| `list_showcase_videos` | List the videos in one of your showcases. Arguments: album\_id (numeric showcase id from list\_showcases, required); optional query (string), sort ("alphabetical" \| "comments" \| "date" \| "default" \| "duration" \| "likes" \| "manual" \| "modified\_time" \| "plays"), direction ("asc" \| "desc"), page (integer ≥ 1), per\_page (integer 1–100). |
| `list_showcases` | List the account's showcases (called albums in the API). Optional arguments: query (string, search by name), sort ("alphabetical" \| "date" \| "duration" \| "last\_modified" \| "videos"), direction ("asc" \| "desc"), page (integer ≥ 1), per\_page (integer 1–100). A showcase's id (album\_id) is the last segment of its uri ("/users/\<user>/albums/\<id>"). |
| `list_text_tracks` | List a video's text tracks (captions/subtitles) metadata only: id, type, language, name, active, provenance, dates — not the file contents. Arguments: video\_id (numeric id, required); optional page (integer ≥ 1), per\_page (integer 1–100). |
| `list_video_comments` | List the comments on a video (author name and link, text, date, reply count). Arguments: video\_id (numeric id, required); optional direction ("asc" \| "desc"), page (integer ≥ 1), per\_page (integer 1–100). |

## Write actions (4)

| Action | Description |
| - | - |
| `add_video_to_showcase` | Add one of your videos to one of your showcases. Arguments: album\_id (numeric showcase id from list\_showcases, integer or digit string, required); video\_id (numeric video id from list\_my\_videos, integer or digit string, required). No body; an empty success (204) means the video is in the showcase. |
| `create_video_comment` | Post a comment on a video as the connected account (needs the interact scope). Arguments: video\_id (numeric id, integer or digit string, required); text (string, required — the comment as plain text). Returns the created comment. |
| `import_video_from_url` | Create a video on the account by letting Vimeo fetch the file from a public URL (upload approach "pull" — no file goes through the agent). Arguments: link (string, required — https URL of the video file, reachable by Vimeo for at least 24 hours); name (string, optional — the title); description (string, optional); folder\_uri (string, optional — a folder uri from list\_folders, e.g. "/users/123/projects/456"); privacy (object, optional): \{ view?: "anybody" \| "contacts" \| "disable" \| "nobody" \| "team" \| "unlisted" \| "users", embed?: "private" \| "public", comments?: "anybody" \| "contacts" \| "nobody", download?: boolean, add?: boolean } — some values are unavailable on Vimeo Free; password protection is not supported here. Returns the new video (uri, upload.status, transcode.status); processing continues on Vimeo — poll get\_video. |
| `update_video` | Update a video's metadata. Arguments: video\_id (numeric id, integer or digit string, required); name (string, optional, max 128 characters — the title); description (string, optional, max 5000 characters); privacy (object, optional): \{ view?: "anybody" \| "contacts" \| "disable" \| "nobody" \| "team" \| "unlisted" \| "users", embed?: "private" \| "public", comments?: "anybody" \| "contacts" \| "nobody", download?: boolean, add?: boolean } — some values are unavailable on Vimeo Free; password protection is not supported here. At least one of name, description, privacy is required. Returns the updated video. |

## Permissions

Every action above must be explicitly granted to an agent before it can be used. See [Permissions](/integrations/permissions) for the grant model and [Security](/integrations/security) for how credentials are protected.

***

*Last reviewed against the provider API: September 2026.*


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.