You can use the API endpoint to request the embed code for a video from its URL. The response format can be either xml or json.


Vimeo videos can use one of three URL schemes:


If you supply a channel video URL, extra data about that channel will be returned with the response. Similarly, you’ll get data about a group if you use the group URL.

All of the above URLs will also work with HTTPS.


Vimeo supports discovery of the oEmbed URL. Each page that has a video will have two link tags with types application/json+oembed and application/xml+oembed containing the URLs for JSON and XML oEmbed responses.


All arguments are sent as query parameters and must be urlencoded (as per RFC 1738).

url (required) The Vimeo URL for a video.
width The exact width of the video. Defaults to original size.
maxwidth Same as width, but video will not exceed original size.
height The exact height of the video. Defaults to original size.
maxheight Same as height, but video will not exceed original size.
byline Show the byline on the video. Defaults to true.
title Show the title on the video. Defaults to true.
portrait Show the user’s portrait on the video. Defaults to true.
color Specify the color of the video controls.
callback When returning JSON, wrap in this function.
autoplay Automatically start playback of the video. Defaults to false.
loop Play the video again automatically when it reaches the end. Defaults to false.
autopause Pause this video automatically when another one plays. Defaults to true.
xhtml Make the embed code XHTML compliant. Defaults to false.
player_id A unique id for the player that will be passed back with all Javascript API responses.

If the owner of a video is a Plus or PRO member, some of these settings may be overridden by their preferences. is_plus is provided in the response to alert you when the owner is a Plus or PRO member.


These are sample responses (they have been shortened for formatting). If a group video URL is used, additional data will be returned about the group. If a video’s privacy is set to anything other than public or password protected, only the embed code, width, and height will be returned.


<?xml version="1.0" encoding="utf-8"?>
    <author_name>Casey Donahue</author_name>
    <html>&lt;iframe src=&quot;//player.vimeo.com/video/7100569&quot; width=&quot;1280&quot; height=&quot;720&quot; frameborder=&quot;0&quot; webkitallowfullscreen mozallowfullscreen allowfullscreen&gt;&lt;/iframe&gt;</html>
    <description>Brad finally gets the attention he deserves.</description>


    "type": "video",
    "version": "1.0",
    "provider_name": "Vimeo",
    "provider_url": "http:\/\/vimeo.com\/",
    "title": "Brad!",
    "author_name": "Casey Donahue",
    "author_url": "http:\/\/vimeo.com\/caseydonahue",
    "is_plus": "1",
    "html": "<iframe src=\"\/\/player.vimeo.com\/video\/7100569\" width=\"1280\" height=\"720\" frameborder=\"0\" webkitallowfullscreen mozallowfullscreen allowfullscreen><\/iframe>",
    "width": 1280,
    "height": 720,
    "duration": 118,
    "description": "Brad finally gets the attention he deserves.",
    "thumbnail_url": "http:\/\/b.vimeocdn.com\/ts\/294\/128\/29412830_1280.jpg",
    "thumbnail_width": 1280,
    "thumbnail_height": 720,
    "video_id": 7100569

PHP and Javascript Examples

We have two examples for you: a really basic example for embedding a specific video on a page, and a fancier one that grabs and embeds the latest video from a user. Both examples are available from our API Examples repo on GitHub.