Adding a high-quality video experience to your Android application just got a whole lot easier. Starting today, you can embed and play YouTube videos in your app using the new ...
Adding a high-quality video experience to your Android application just got a whole lot easier. Starting today, you can embed and play YouTube videos in your app using the new YouTube Android Player API.

The API, which was pre-announced at Google I/O 2012, offers these benefits:
We are launching the API as experimental, though we do not expect major interface changes going forward.

The Only Limit Now is Your Imagination (and ToS)

These instructions explain how to include the YouTubeAndroidPlayerApi.jar client library in your Android application. The library is supported on Android devices running version 4.2.16 or newer of the Android YouTube app.

You can use the YouTubeApiServiceUtil class' isYouTubeApiServiceAvailable method to confirm that a device is compatible.

For a simple embed, use the YouTubeStandalonePlayer. To build a more sophisticated user interface, try the YouTubePlayerView or the YouTubePlayerFragment. Fragments can help create an engaging experience as shown in the Video Wall app example.


Play With These Apps

Here are a few interesting apps available for you to explore:
  • See everything on Flipboard, all your news and life’s great moments in one place. Now you can watch YouTube videos from wherever you are in Flipboard without leaving the application, providing a more integrated and seamless experience.
  • BuzzFeed delivers original reporting, scoops, and the hottest social content on the web. Android users can now view their favorite BuzzFeed content featuring YouTube videos in the BuzzFeed app and share with their friends.
  • 9x9.tv enables users to discover and watch curated, topical videos that are organized into TV-like channels. Their blog describes their experience developing with the API.
  • SoundTracking lets people use their mobile phone or tablet to share their music moments and favorite jams with friends and family.  Users can now discover and play YouTube music videos of the songs within their music timeline.
  • Fitness Flow by Skimble helps you get in shape with high-quality exercise videos led by professional trainers. Skimble uses YouTube to stream workout content on your Android phone and tablets.
Check out a few screen shots below or download the apps from Google Play today!
Flipboard BuzzFeed Skimble Workout Trainer
FlipboardBuzzFeedFitness Flow by Skimble
Learn More

If you would like to learn more about the YouTube Android Player API, the documentation is a great place to start. In addition, we have curated useful videos in this playlist. Please subscribe to the YouTube for Developers' channel to keep up on the latest.


Check Out The Sample Code

We’ve prepared several code examples to make it easy for you to get started with the new API. You will find them on code.google.com. The description of the examples is available in our documentation. If you need additional help with the API feel free to use our support resources.

Cheers,
-- Ross McIlroy, Anton Hansson, and Horia Ciurdar, YouTube Mobile Team

  •  Showyou, an app that makes it easy to watch the Internet, integrated the Topics API to enable users to discover related videos after tapping on topics associated with the Showyou feed. 
  • Argentina-based Interesante integrated the Topics API to determine the Freebase topic of videos being shared. Interesante used this to serve interest-based video recommendations. 
  • FanBridge, a company specializing in growing and managing one’s fan base, recently introduced channel bulletin post functionality with scheduled posts support.
  • Tubular Labs, which focuses on YouTube audience development, uses subscriber list to help content creators develop a better understanding of their audiences. 
  • Pixability, a company specializing in YouTube marketing software, was able to quickly port their Online Video Grader to the YouTube API version 3.0 thanks to the new Python client library.
Since its initial launch in 2007, the YouTube Data API has become one of Google’s most popular APIs by request volume, thanks to the awesome apps from developers like you. To help you make better integrated video experiences, you can now use the YouTube API version 3.0. The new API is easy to use thanks to rich client library support, improved tooling, reference documentation and integration with Google’s common API infrastructure.  Version 3.0 only returns what you ask for and is using JSON rather than XML encoding for greater efficiency. The API introduces new core functionality including Freebase integration via topics, and universal search.  If you develop social media management apps, you’ll love channel bulletin post and full subscriber list management, also new in this release. Version 3.0 of the API constitutes the API's biggest overhaul to date and we’re eager for you to try it today

New Functionality: Topics, Universal Search, and Audience Engagement Support

Have you ever tried to search for YouTube videos only to find out that keyword search can produce ambiguous results? With the new Topics API, thanks to the power of Freebase, you can find exactly what you’re looking for by specifying Freebase topic IDs rather than search keywords.

For example, if you’re reading this post from outside of the US and would like to search for content related to football, /m/02vx4 is probably the topic ID you're after. The API's universal search feature lets you retrieve channels, playlists and videos matching the topic with just one request like this one. Find out more in our Topics API Guide.

Version 3.0 introduces better tools to engage and interact with one’s YouTube audience. Social media management apps can now help content creators communicate with their channel subscribers using buletin posts

Efficiency, Client Libraries, Better Tooling and More!

To help you reduce your app’s bandwidth requirements version 3.0 only returns the information you ask for as specified by the “part” parameter.

While the default JSON encoding in version 3.0 is more efficient than XML in version 2.0, if parsing JSON isn’t your thing, check out the client libraries for .NET, Dart, Go, Java, JavaScript, Objective-C, PHP, Python and Ruby. The libraries use OAuth 2.0 authorization and work with the YouTube API as well as other modern Google APIs thus simplifying your application.

The familiar Google API tools such as the API console  work with YouTube API version 3.0 without any extra hassles. Additionally, our API reference documentation now allows you to scroll down to the bottom of any reference page to try the API. You can also or visit the standalone API Explorer to browse a list of supported methods. 

App Examples

Even though version 3.0 is still experimental, a number of exciting new apps are already using it. Let’s look at a few examples: 
  •  Showyou, an app that makes it easy to watch the Internet, integrated the Topics API to enable users to discover related videos after tapping on topics associated with the Showyou feed. 
  • Argentina-based Interesante integrated the Topics API to determine the Freebase topic of videos being shared. Interesante used this to serve interest-based video recommendations. 
  • FanBridge, a company specializing in growing and managing one’s fan base, recently introduced channel bulletin post functionality with scheduled posts support.
  • Tubular Labs, which focuses on YouTube audience development, uses subscriber list to help content creators develop a better understanding of their audiences. 
  • Pixability, a company specializing in YouTube marketing software, was able to quickly port their Online Video Grader to the YouTube API version 3.0 thanks to the new Python client library.
Learn More

If you would like to learn more about the YouTube API version 3.0, in addition to the API documentation, the material curated in this playlist is a great place to start. Please subscribe to the YouTube for Developers' channel to keep up on the latest.


Use The Source, Luke! 

Since the most fun way to work with it is to try it, we’ve prepared a few code examples in Python and JavaScript to get you started. For a more comprehensive client-side app using the Topics API, try the Topics Explorer. You can find its source code on code.google.com.

Cheers,
-- Raul Furnică, Vladimir Vuskovic and Pepijn Crouzen, YouTube API Team


Update (June 2013): The change mentioned in this blog post is now in effect. Attempts to use ClientLogin with a YouTube username will result in HTTP 403 Forbidden responses, with
Long-time readers might remember a blog post from a while back entitled “ClientLogin #FAIL”, in which we covered the myriad ways in which your ClientLogin authorization attempts might result in an error. Even though ClientLogin has been officially deprecated since April 2012, and even though we’ve been recommending that developers switch to OAuth 2 for longer than that, we know there are still a good number of legacy applications out there that still rely on ClientLogin.

If you are a developer of such an application, there’s another thing that you (and your users) will need to start watching out for: at some point in the future, we will start requiring that the username parameter passed to ClientLogin (i.e. what’s referred to as the Email= value in the ClientLogin request) correspond to the full email address of the Google Account that’s associated with an underlying YouTube channel. We’ve supported using Google Account email addresses with ClientLogin for many years now, ever since we started linking Google Accounts to YouTube channels, but old habits die hard, and many users still use YouTube usernames.

We haven’t yet determined a date for when we still stop supporting ClientLogin with YouTube usernames and will provide additional details when we know more about when it will take place. However, if you use ClientLogin, it’s not too early to start encouraging your application’s users to start providing their Google Account email addresses instead of their YouTube usernames when logging in. If you have the ability to update your existing application’s user interface, we recommend doing so to indicate that the username field should take a Google Account email address. If you have any online help materials or technical support for your software, update them to ensure that users know to provide their Google Account email address.

Users who log in via the YouTube.com web interface, or who go through the AuthSub, OAuth 1, or OAuth 2 web authorization flows will soon be required to use their Google Account email address instead of their YouTube username as well. This web-based transition will take place well before we deprecate YouTube usernames for ClientLogin, and it should be transparent to developers since Google controls the user interface for these flows. For more information, see this help center article.

As mentioned, we’ll have a follow-up post in coming months with more details about exactly when we’ll stop supporting YouTube usernames with ClientLogin. That post will also communicate the exact error message that ClientLogin will return when a YouTube username is used. We’d like to close with one more plea: ClientLogin is deprecated, and is technically inferior to OAuth 2 in a number of important ways. Our new Google APIs client libraries provide first-class OAuth 2 integration that developers can take advantage of in their new code, or back port to their existing code. You will be doing your users a service and making their accounts more secure by transitioning from ClientLogin to OAuth 2.


Update (June 2013): The change mentioned in this blog post is now in effect. Attempts to use ClientLogin with a YouTube username will result in HTTP 403 Forbidden responses, with Error=BadAuthentication in the response body.

Cheers,
Jeff Posnick, YouTube API Team

When we began building the new YouTube app for Nintendo Wii, we wanted to make video playback smooth and beautiful. This meant squeezing the most available power from the console CPU and fitting the video decoding process within the tight bounds of available memory. After trying out several video encoding formats on Wii, we found that 360p WebM encoding performed the best. With the largest install base of current generation consoles, YouTube on Wii is the largest deployment of WebM video in the world today.

WebM is particularly well-suited to devices where available memory is limited, because of its technical approach to video encoding. VP8, the video codec in WebM, uses reference frames (called alternative reference frames, or "alt-ref") from which adjacent video frames are derived and compressed. This type of compression is commonly used in modern video encoding schemes, but VP8 uses the technique with particular efficiency, which results in a smaller memory footprint and smoother video playback on Wii.

We went one step further and performed low-level optimization of the VP8 decoder specifically tuned to the Wii’s processor. This included: using paired-single floating point operations to perform motion compensation, loop filtering, and idct; using the GPU to do color conversion and scaling; and dcbz instructions to copy buffers. This kind of
optimization is available to anyone, as the VP8 code is open source under a BSD license.

We’ll keep looking into other ways we can use WebM, so stay tuned on this blog to learn more.

Fritz Koenig, Engineer, recently watched Phantogram - "Don't Move", and Matt Darby, Product Manager, recently watched “JP Auclair Street Segment.”

Jeff Posnick, YouTube API Team
If you’re a developer who uses the YouTube API, and if you make your requests to the API using HTTPS, there’s an upcoming change that you should be aware of. Sometime in early August 2013, Google will be changing the certificates used for establishing secure HTTPS connections to all of our servers, in what we anticipate will be a backwards-compatible manner. Still, since there are so many slight differences in HTTPS client implementations, we encourage you to test your existing code in advance of this change and to report any issues that you do encounter.

The new certificates are currently active on https://cert-test.sandbox.google.com/, and we recommend testing your HTTPS client implementation against that URL.

If you’re using HTTP instead of HTTPS to access the YouTube Data API then you also won’t be affected by the new security certificates—but you really should start using HTTPS!

This post on the Google Online Security Blog has more information about the upcoming change, which roll out in early August, 2013.

Cheers,
Jeff Posnick, YouTube API Team


We're constantly amazed at the innovative ways that developers incorporate YouTube into their applications. At Google I/O this year, 12 partners (over 30% from outside the U.S.) demonstrated their apps in the YouTube section of the Developer Sandbox, a demo area highlighting applications based on technologies and products featured at I/O.


We're constantly amazed at the innovative ways that developers incorporate YouTube into their applications. At Google I/O this year, 12 partners (over 30% from outside the U.S.) demonstrated their apps in the YouTube section of the Developer Sandbox, a demo area highlighting applications based on technologies and products featured at I/O.

Google's own Daniel Sieberg, an Emmy-nominated journalist, interviewed some of our partners about their use of the YouTube APIs.

With Daniel’s hectic schedule, he only had time to interview a handful of our great partners.  With that in mind, we highlighted all the awesome apps showcased by our partners at the YouTube API Developer Sandbox.

Business.me (YouTube Data API and YouTube Player API)

OverviewBusiness.me, headquartered in Singapore, is the place to share and discover videos about business.  They have created a video-sharing site to help producers of business videos reach their audience.  The site also helps business professionals discover relevant business information in video format.
Fun FactOscar Moreno, CEO, not only holds Business and Law degrees, he helped launch several startups (Business.me, Netjuice, Keldoo, and Tuenti).



Code Hero (YouTube Data API)


OverviewCode Hero teaches you to code through a fun, 3D game. Become a code hero and shape the future!
Fun FactThe Code Hero Team implemented the recording mechanism in the game that exports to YouTube at a 3 day hackathon!

Bonus: The game has
sharks with lasers attached to their heads!


Flipboard (YouTube Data API and YouTube Player API)

OverviewSee everything on Flipboard, all your news and life’s great moments in one place. Using the YouTube Data API, Flipboard lets users discover, rate, share, and comment on top videos from YouTube. In addition, users can access their own videos and subscriptions, and subscribe to other YouTube users.
Fun FactFlipboard launched an Android app one week before I/O with a YouTube and Google+ integration!



LOOT Entertainment by Sony DADC (YouTube Data API)

OverviewGather your friends and set up your own production crew inside PlayStation®Home! What will you be? Director? Actor? Cinematographer? Extra? Try them all! Check out the amazing Machinima tools to help you record, light and build your film or television sets! What will you make?
Fun FactLOOT gives you tons of sets to make your own movies (machinima) on the PS3, including a Ghostbusters Firehouse Stage Set!



Moviecom.tv (YouTube Data API and YouTube Player API)

OverviewA simple and easy online video platform for businesses. Record, centralize and share instantly.  Moviecom.tv also allows you to link directly to your YouTube account through the YouTube APIs.
Fun FactThe founders flew all the way from Glasgow to attend Google I/O!



Parrot (YouTube Data API and YouTube Player API)

OverviewThe Parrot AR.Drone is a quadricopter that can be controlled by a smartphone or tablet. Get more out of your AR.Drone with the AR.Drone Academy. Keep track of all your flights on the Academy map.  Watch your best videos with added statistical feedback and directly share online with pilots from all over the world!
Fun FactParrot makes remote controlled flying devices that can record and track their flights!



PicoTube - Vettl, Inc. (YouTube Data API and YouTube Player API)

OverviewPicotube uses content from YouTube and allows users to create avatars, watch clips together, create playlists, and rate videos selected by other video jockeys.
Fun FactPicotube was the Grand Prix winner of TechCrunch Tokyo 2011!



Skimble (YouTube Data API and YouTube Player API, and new Android Player API)

OverviewHere to power the mobile fitness movement, Skimble offers fun, dynamic and social applications for everyone. Available now are Skimble's Workout Trainer and GPS Sports Tracker apps that help motivate people to get and stay active.  Skimble uses the YouTube Player API to display fitness videos.  
Fun FactCo-founder Maria Ly got the crowd moving at one of YouTube’s Google I/O Sessions!



Squrl (YouTube Data API and YouTube Player API)

OverviewSqurl is a great place to watch and discover video. Know what videos are trending, receive recommendations on what to watch and see what your friends are watching.
Fun FactCo-founders Mark Gray and Michael Hoydich also founded the successful software development company IndustryNext together in 2004!



Telestream (YouTube Data API and YouTube Player API)

OverviewTelestream demonstrated Wirecast for YouTube, a live video production and streaming product, which was developed specifically for Google YouTube partners.  Telestream specializes in products that make it possible to get video content to any audience regardless of how the content is created, distributed or viewed (entire process).  
Fun FactTelestream’s NASCAR Project won the IBC2012 Innovation Award!



Vidcaster (YouTube Data API and YouTube Player API)

OverviewVidCaster is a video site creation platform that allows you to create a video portal instantly from your existing video library on YouTube or other video hosts. Choose from a beautiful set of designer themes and customize to your heart's content using VidCaster's powerful template language.
Fun FactKieran Farr, CEO and co-founder, used to drive a taxi full-time in San Francisco before becoming a successful entrepreneur!



WeVideo (YouTube Data API)

OverviewWeVideo is a cloud-based video editing suite that allows easy, full-featured, collaborative HD video editing across Google Drive, Chromebooks, and Android devices.
Fun FactWeVideo partnered with Marvel and YouTube to allow fans to create their own trailers!




  • Tips and Tricks
  • What's your goal?
    • Raising awareness
      • Master your PR via video (include all your features and make bloggers’ lives easier)
      • Provide product/service demo videos to promote your company
      • Tell backstories about clients using your products/services
    • Raising money
      • Add video to your crowdfunding pitch to increase funds raised by 114% (source: Indiegogo)
    • Researching and supporting users
      • Record tutorials to promote and educate (see which features are the most popular using YouTube’s Analytics... you might be surprised)
      • Use Google Hangouts for scalable office hours and virtual focus groups
      • Figure out what features customers like/dislike via the world’s largest focus group
  • Resources to learn more
It's never been easier to create compelling videos and build a social presence on YouTube.  At this year's Google I/O, YouTube product managers and channel gurus Dror and A.J. presented tips and tricks for making great content centered around raising brand awareness, raising money, and obtaining feedback about your products and services.

Don't worry if you missed their talk, we recorded it!  So, sit back, grab some popcorn, and get ready to learn how to showcase your brand in front of YouTube's 800 million unique visitors per month!




Click here to view the slides from the video above.

Not sold yet? Well, have a sneak peek at some of the great material they cover below, and remember Dror and A.J.’s number one recommendation: make content, not commercials!

Sneak Peek

  • Tips and Tricks
  • What's your goal?
    • Raising awareness
      • Master your PR via video (include all your features and make bloggers’ lives easier)
      • Provide product/service demo videos to promote your company
      • Tell backstories about clients using your products/services
    • Raising money
      • Add video to your crowdfunding pitch to increase funds raised by 114% (source: Indiegogo)
    • Researching and supporting users
      • Record tutorials to promote and educate (see which features are the most popular using YouTube’s Analytics... you might be surprised)
      • Use Google Hangouts for scalable office hours and virtual focus groups
      • Figure out what features customers like/dislike via the world’s largest focus group
  • Resources to learn more

Wow, you made it this far without watching the video? Did we tell you they fill the presentation with awesome videos that showcase their points (including Chuck Testa)? Nope!? Well, now you know, and you will definitely want to watch the whole thing!

-Jeremy Walker, YouTube API Team




  1. Before posting, search to make sure your question hasn't been asked before. To do this, put [youtube-api] as the first part of your search, then type in some keywords that describe your problem or question.
  2. If you need to ask a question, make sure you apply the youtube-api tag, as well as the tag that indicates the language that you're using. If you're using PHP to access the API, your question should be tagged youtube-api as well as php.
  3. Make sure you watch your question after posting it, as experts that can provide you with an answer might leave comments to ask you for clarification.
Many of you are already familiar with the terrific Stack Overflow website, which has become the de facto resource on the web for all types of programming questions. And many of you have been asking YouTube API questions on Stack Overflow for some time now, but haven’t received any official responses from the YouTube API Developer Relations team. That’s because, for the past five years or so, our focus has been on providing developer support via our dedicated Google Group. We’ve decided that instead of continuing to maintain a dedicated Google Group for YouTube API questions, it would help more users if we focused on responding to Stack Overflow posts.

We encourage all developers who have questions about the YouTube API to start posting on Stack Overflow today using the tag youtube-api. You can use this new question template to pre-populate the tag for you so that you don’t forget. While we’ll do our best to find and answer relevant questions that aren’t tagged with youtube-api, you’d be making our job easier (and you’d get a quicker answer) if you tag things correctly from the get-go.


Here are a few tips for folks new to Stack Overflow:

  1. Before posting, search to make sure your question hasn't been asked before. To do this, put [youtube-api] as the first part of your search, then type in some keywords that describe your problem or question.
  2. If you need to ask a question, make sure you apply the youtube-api tag, as well as the tag that indicates the language that you're using. If you're using PHP to access the API, your question should be tagged youtube-api as well as php.
  3. Make sure you watch your question after posting it, as experts that can provide you with an answer might leave comments to ask you for clarification.

Stack Overflow prides itself in being a destination for questions and answers, and not a place to file bug reports or feature requests. We ask that developers do not post on Stack Overflow for those sorts of things, and instead make use of the templates we have for filing a bug or filing a feature request in our existing public issue tracker. (Be sure to check the list of existing open issues before filing a duplicate.)

On October 15, we’ll be switching the existing discussion Google Group into archive-only mode, meaning that it will no longer accept any new posts. You don’t have to wait until October 15 to start asking questions on Stack Overflow or to file reports in the issue tracker, though.

For those developers who mainly “lurked” in the discussion Google Group and used it as a way of getting official announcements about the YouTube API, we have a number of other communication channels to recommend. Subscribing to this blog’s RSS feed is a great idea, for instance. You can also follow us on Google+ at http://google.com/+YouTubeDev. If you’d like to submit a question to one of our weekly YouTube Developers Live broadcasts, you can do that for the next upcoming scheduled show. Finally, for those who prefer to get updates via email, we will be keeping the announce-only Google Group active, and we’ll continue to post important messages there.

Cheers,
Jeff Posnick, YouTube API Team

<category scheme="http://gdata.youtube.com/schemas/2007/keywords.cat">
Update: This change also applies to <category scheme="http://gdata.youtube.com/schemas/2007/keywords.cat"> tags, which were not mentioned in the original announcement.

If you follow the YouTube Creator Blog, you might have recently seen a post announcing that video tags (also known as keywords) would no longer be displayed to viewers of a video on YouTube’s website. They aren’t going away from the video itself, though—the owner of the video can still create tags for new videos and edit tags for existing videos, and video tags will still provide an important signal used to surface relevant results when searching for videos.

We’re going to be making some corresponding changes to all versions of the YouTube Data API to mimic this behavior in API responses. Starting later today, August 28, on the staging server and September 4 on the production server, any time you get a video entry back from any API method, it will have an empty <media:keywords/> element. This is a valid response from the API that your application should already handle gracefully, since videos are not required to have any keywords to begin with.

The exception to this rule is when you make authenticated requests to the API, and you request a video entry that’s owned by the currently authorized user. In that scenario, you will get back a <media:keywords> element that contains the full list of tags for the video, and you can read, update, or remove those video tags using the standard API operations.

Important: If your application allows video owners to update the metadata of their videos, please ensure that you include the proper Authorization header for both read and write operations. Otherwise, you could accidentally return an empty list of video tags when retrieving an existing video, and end up overwriting the video’s tags if you update the metadata. Video tags continue to play an important role in helping viewers discover your videos when searching on YouTube.com or via the API, so if your application does support metadata editing, please make sure you allow owners to tag their videos properly.

Cheers,
Jeffrey Posnick, YouTube API Team