Thursday, October 7, 2010

PubSubHubbub for YouTube Activities

Update (February 2012): We're happy to report that PubSubHubbub functionality for YouTube feeds has been restored for the uploads, subscriptions, and favorites feed. When subscribing to a feed URL, be sure that the only URL parameter you include is v=2, e.g. http://gdata.youtube.com/feeds/api/users/GoogleDevelopers/uploads?v=2


Update (November 2011): As mentioned below, PubSubHubbub for YouTube feeds is currently inactive. The engineering team is investigating options for restoring functionality; more info will be posted following those investigations.


Update (October 2011): Unfortunately, we no longer support subscribing to YouTube user events via PubSubHubbub. We suggest using the Simple Update Protocol as an alternative.


PubSubHubbub, for those not in the know, is a server-to-server protocol for notifying interested parties of events they’re interested in. Notifications are pushed out to subscribers via HTTP web hooks, which offers efficiencies over polling-based solutions. With PubSubHubbub, your server finds out about events in near real-time, without having to determine the optimal polling interval or repeatedly fetch individual activity feeds that haven’t changed.


We’re happy to announce that it’s now possible to subscribe to three types of YouTube user events via PubSubHubbub: video uploads, new subscriptions, and video favorites. The subscription requests need to be made on a per-user basis, so you will only receive updates for specific users that you’re interested in. Your code can look for our PubSubHubbub hub address in the href attribute of the top-level <link rel='hub'> element in uploads, subscriptions, and favorites feeds. For example, the feed http://gdata.youtube.com/feeds/api/users/GoogleDevelopers/uploads?v=2 exposes the hub address in the <link rel='hub' href='http://pubsubhubbub.appspot.com'/> element.


More details on the PubSubHubbub can be found in the specification document. If you’d like your server to receive YouTube user event updates via PubSubHubbub, this list of libraries is a good place to start.


Cheers,
-Jeff Posnick, YouTube API Team, in conjunction with the PubSubHubbub Team