Netflix API Developer Blog
RSS FeedDevelopers sought for .NET API Wrapper
Want to see a .NET wrapper for the Netflix API? All you have to do is provide feedback on the API under development by Jonathan Allen. He does all of the work, you provide the feedback. What a deal!
Go here for more details.
This Week's API Update, a Note on Interfaces
Earlier this week we rolled out some incremental API improvements and bug fixes. Here are the highlights:
users/current resource
This resource returns a link to the currently authenticated user. You can now access the active user's associated API resource without extracting the user ID from the OAuth access token response. This should make use of OAuth libraries that don't support standard response extension easier to use.
On a related note, we also are in the process of removing the need to pass the application name into the authorization (login) URL, which will remove the last of our (standard-compliant, but difficult) OAuth extensions that tend to trip up some OAuth libraries.
gzip support
gzip compression of API responses is now enabled for clients that pass the gzip accept header (see Conventions documentation for more details). We typically see at least a 2x latency improvment in calls that use gzip- even more on larger responses and for clients on slower network connections.
lost request tokens
We addressed a couple bugs that lead to request tokens not getting passed in authorization service callbacks.
category scheme URL fix for catalog index
The category scheme URL for title formats in the index was incorrect and inconsistent with similar references in other resources. We added the correct category reference to the catalog index. The older, incorrect reference will be maintained until the next versioned update of the API, at which point the old, erroneous reference will be removed.
API URL 404s
We found a few cases where the API was returning responses for badly formatted URLs. The API should always return a 404 if the URL supplied is not an exact match for the resource URL. We don't want to be flexible in accepting near-miss URLs since they are also resource IDs, which there should be only one of for each resource.
The only flexibility we continued to allow short-term is the use of trailing slashes on resource names. We will eventually disallow those as well, but we chose not to return 404s for resource URLs with this error until we do the first API release with a version change, in order to give developers time to migrate any old code that contains this URL error to the new API.
This is a good opportunity to remind everyone that you should be using API versioning to protect your code from any interface changes introduced in new versions of the API (see Conventions reference mentioned above for more information). We avoid making interface changes whenever possible, but sometimes they are unavoidable. API versioning is your friend. Also note that we reserve the right too extend the interface at any time, e.g. new XML elements, API resources or URL params) without versioning the API.
I hope everyone enjoys these improvements. Happy coding!
Postponed: Hack Day 11/14-11/15
UPDATE: we've decided to postpone hack day until after the holidays in the new year. Hope to see everyone then!
I'm excited to announce that in just three weekends we'll be having our first open Hack Day at the Netflix campus in Los Gatos. The event will run from 12pm on Friday, November 14th through 3pm Saturday the 15th.
Bring your ideas and mad programming skills. Build one of the better hacks and walk away with the admiration of your peers as well as one of many prizes (Netflix-enabled Blu-ray player, anyone?)
Members of the API team will be on hand to meet you and answer any of your questions. Food and ample supplies of caffeine will be provided, of course.
To sign up, please send your name, email address, and tentative project (if you know already) in an email with the subject "hack day" to apisupport@netflix.com. We'll be accepting applications and selecting up to 100 participants on an ongoing basis through next Wednesday, Nov. 5th.
Please visit the hack day forum for more information, to get your questions about the event answered or to form teams.
1st API-enabled Social Network Integration: Plaxo Pulse
Joseph Smarr at Plaxo has been one of our most engaged developers so it's no surprise that he's already integrated Netflix into Plaxo's social network "Pulse".
I'm a big fan of what they've created. They're leveraging different aspects of the API to create a very smooth user experience. The subscriber authenticates and authorizes Plaxo's use of the API using OAuth without leaving Plaxo. They programmatically access the subscriber's Atom feeds, eliminating the awkward cutting-and-pasting of URLs that is too common when sharing your lifestreams with social networks. Then the use the javascript API to let members of the user's social network add movies to their queues or play them instantly directly from the ratings. I love this scenario!
Here are some screenshots from the Pulse integration. You can also find more information here.



1st API-enabled IPhone Application Released!
The first API-enabled IPhone application has appeared in the IPhone App Store today: Adrian Cockcroft's "Instant Qadd for Netflix"!
Adrian's application lets an IPhone users select from a number of instant watching titles and add them to his instant watching queue. If the user is on his couch at the time with a Netflix-enabled TV device in the room, the experience is somewhat akin to using a super advanced remote control.
You can find Adrian's app at the IPhone App Store here: http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=293419823&mt=8. He is offering the application free-of-charge until next Wednesday, at which point you'll have to shell out $0.99.
(Full disclosure: when not creating cool new apps in his free time, Adrian is an engineering manager creating cool apps at Netflix)
1st New API-enabled Application Released!
While one of the goals in creating the API was to make integration and maintenance easier for all of the applications out there that were getting by with our RSS feeds and screenscraping, we also wanted to enable a range of entirely new applications with more advanced Netflix service capabilities.
We're happy to announce the that a beta version of the first of these new applications has just launched: SmartFlicks, Netflix on BlackBerry from Pyxis Mobile.

SmartFlicks lets you manage your Netflix account, as well as read movie reviews and news.
Going forward I'm highlighting "first in category" or otherwise noteworthy developer applications on this blog. I encourage all developers to share their applications with others in the temporary Showcase in the forums. We're also beginning work on an application showcase on the main Netflix web site to help promote your applications more directly to our subscribers.
So, congratulations to the team at Pyxis, and we can't wait to see what's the rest of you are developing!
API Performance Improvements
Every seasoned software engineering manager has been faced with the "features vs. ship date" trade-off. As we neared our API launch date two weeks ago, there were two issues affecting the API's performance that we decided to defer in the interest of getting the API into your hand ASAP. One issue was with a bug in the request routing between the developer, regional API proxies, and our API backend. The other issue was a temporary inability to support inline gzip compression.
I'm happy to announce that the first issue has already been resolved, and we're seeing roughly a 6x performance increase in our testing on a high-bandwidth Internet connection. Tests with an API client on a very slow broadband connection are showing a similar, order-of-magnitude, performance improvement.
The GZip fix should provide yet another, order-of-magnitude, performance improvement. We hope to make this fix available to you in the very near future.
(Temporary) Showcase
Hi All,
Since it's taking us longer to get the gallery up and running, we've set up a new Discussion Forum called Showcase. This is just a place you can tell your fellow Netflix Developers what you've been up to as well as get their feedback.
Obviously, things are limited to folks visiting the forums, but at least you won't have to worry about your post getting buried by a bunch of folks asking questions about queue management and how to do OAuth in Logo on a Commodore 64.
As always, we're looking forward to the cool stuff you make.
Post-Launch Bug Fixes
UPDATE: These fixes are now live.
We're about to roll out a variety of small fixes for bugs discovered since our launch last week.
This release includes two very minor changes to the API interface:
- a fix for a typo in the queue_availability category name
- changing the rel value name for title links from queue, ratings, etc. from "id" to "title"
Normally we would use the API's versioning to support the old interface while we rolled out the new interface. Since no API-based applications have shipped yet (to our knowledge) we thought we could make this interface change without versioning without breaking any released applications. Please let us know in the comments if you think we should version this change, otherwise we'll release the change tomorrow afternoon (PT) without versioning.
Here are the other fixes in this forthcoming release:
- Fix for title details that don't return results (i.e. Ghostbusters)
- Fix lost UTF-8 escaping within CDATA text
- Minor UI fixes for the JavaScript API
- Updated test account provisioning instructions (credit card no longer required)
The Netflix API on TheSocialWeb.tv
I have a chance to talk about the Netflix API and why we're doing it with TheSocialWeb.tv gang yesterday.
Check out the video here: http://www.thesocialweb.tv/blog/2008/10/episode-12-netf.html
