Vimeo hub

Vimeo Video API

One video with the fields you need to list, filter or embed it: text, dates, tags, thumbnails, owner, privacy and public counts.

GET /v1/vimeo/videos/{videoId}

1 credit Failed requests are free

About this endpoint

GET /v1/vimeo/videos/{videoId} takes a digits-only video id such as 76979871. On found, data.video carries the identity (id, url), the text (title, description, descriptionHtml), the dates (uploadedAt, modifiedAt, releasedAt), technical facts (durationSeconds, width, height, orientation) and discovery fields (tags, categories, language, license).

The record also carries thumbnails in four sizes, owner with id, name, handle, URL and avatar, privacy with view, embed and comments, embedPermission (anywhere, approved or nowhere) and stats with plays, likes and comments. A hidden count is null, not zero. If the video is gone, private or password protected, lookupStatus is not_found and video is null.

Vimeo Video API FAQ

What does a found video include?

The video record: id, url, title, description and descriptionHtml, uploadedAt, modifiedAt, releasedAt, durationSeconds, width, height, orientation, tags, categories, language, license, contentRating, privacy, embedPermission, thumbnails, owner and stats. Fields Vimeo does not send are null rather than missing.

Why are plays or likes null?

An uploader can hide public stats. A hidden count comes back as null, not zero, so you can tell hidden from never counted. The same applies to comments in stats.

What happens for a private or missing video?

lookupStatus is not_found and video is null. Vimeo does not tell removed, private, password-protected and never-existing videos apart, so the response reports the same typed status for all of them. HTTP 200 only means the request finished.

How many credits does a video lookup cost?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth.