Most recent items from Netflix API feeds:
Retiring the Netflix Public API from Official Netflix API Blog Feed

As Netflix continues to grow internationally, the emphasis of our engineering efforts is to satisfy a growing member base and a growing number of devices.  To better focus our efforts and to align them with the needs of our global member base, we will be retiring the public API program.  Effective on November 14, 2014, public API developers will no longer be able to access Netflix content.  All requests to the public API will return 404 errors.
Through the process of ending the program, we will be partnering more directly with a small set of developers whose applications have proven to be the most valuable for many of our members.  Those applications will continue to operate beyond November 14, 2014.  The following is a list of these applications:

Instant Watcher
Fanhattan
Yidio
NextGuide
Flixster
Can I Stream It?
FeedFliks
Instant Watch Browser for Netflix

Thank you to all of the developers who have participated in the ecosystem throughout the years.
Daniel Jacobson
VP of Edge Engineering 

over 10 years ago

Public API Update from Official Netflix API Blog Feed

Starting today, we will no longer provide expiration dates for any of our titles in the public API.  We will continue to publish the field to the REST API and the catalog index file to minimize the likelihood of breaking applications that use it, although all titles will now have "1/1/2100" as the date value.
We are making this change because the expiration date can be inaccurate as a result of frequent, often last minute, changes in content flow.
Netflix members will still be able to see the listed title expirations on Netflix.com on each individual title page.
- Daniel Jacobson

over 11 years ago

Changes to the Public API Program from Official Netflix API Blog Feed

The API program has shifted over the past few years to support our growing and evolving streaming business. Its primary focus is to support the myriad devices used by our 33 million members to stream TV shows and movies from Netflix.  Because of this evolution, we are making additional changes to the public API program.
The changes, outlined below, are designed to allow us to focus our API efforts on supporting the products and features used most by our members. They are also designed to allow us to continue to offer the public API program in a way that aligns with our goals.
The following are the changes we are making to the program, all of which are effective immediately (except where otherwise noted):

We will no longer issue new public API developer keys.  All existing keys that are actively calling the API will remain active.
We will no longer accept new API affiliates.  There will be no impact to existing and active affiliates.
We will no longer offer test environments.  The test tools have been unavailable for a while and we won’t bring them back.
We will set the forums in the developer portal to read-only.  We encourage developers to continue their conversations at StackOverflow with the tag “netflixapi”.  The existing forum posts will remain on the site for now in the form of an archive.
We will retire the OData catalog, effective on April 8, 2013. 

If you have any questions, please email publicapi@netflix.com.
Daniel Jacobson
Director of Engineering – Netflix API

almost 12 years ago

Update: Changes for the Public API from Official Netflix API Blog Feed

As a reminder to my previous blog post about the public API changes, all current endpoints for the catalog index files will be shut down as of September 15, 2012, but they will be available until then as developers work to migrate to the new files.  In their place will be two new files:
http://api-public.netflix.com/catalog/titles/streaming
http://api-public.netflix.com/catalog/titles/dvd
To be clear, these two files will support the catalogs for streaming and DVD respectively.  These files are available now.  Over the next few weeks/months, you may notice some DVD elements/attributes in the streaming file and you may notice some streaming elements in the DVD file.  Over time, those straggling features will be fleshed out to leave each file streamlined towards its targeted goal.
Although it may not have been explicitly stated in the past, as the old catalog index files get retired, we will also be removing the files that contain the references to the AMG and TMS IDs, referenced in our documentation.  If your app uses the catalog index files that support those IDs, you will no longer be able to access those IDs as of September 15, 2012.
Daniel Jacobson
Director of Engineering - API

over 12 years ago

Upcoming Changes to the Netflix API Program from Official Netflix API Blog Feed

Over the past years the Netflix business has evolved to focus on delivering a great streaming experience on a wide variety of consumer electronics devices. Similarly, we have been evolving our API program to focus on servicing the rapidly growing universe of these devices used by our more than 26 million streaming members globally. As the API program evolves with the business, we now need to make some changes. While we will continue to support third parties as they develop and offer Web sites and applications that interact with Netflix, these changes are designed to do so in a way that is aligned with our broader objectives.
Here is a detailed description of the changes and the timing for each.
Functional Changes

We have already modified the value of the <available_until> element for all titles to be 1/1/2100 unless the title is to become unavailable within two weeks of the requesting date.
We will be removing the following endpoints, effective on September 15, 2012:

/users/userID/rental_history
/users/userID/rental_history/shipped
/users/userID/rental_history/returned
/users/userID/rental_history/watched
/users/userID/at_home

We will be removing the following elements from the title_states endpoint, effective on September 15, 2012

<watched_date>
<playback_bookmark>
<watched_to_end>

We will be removing the following RSS feeds, effective on September 15, 2012:

Most Recent Rental Activity
Movies At Home

We will be removing all metadata for the rental history, recently watched, at home, etc. in all expands for all endpoints.
We will be changing the API base URL domain from api.netflix.com to api-public.netflix.com.  This new domain is active now.  All requests will need to point to it by September 15, 2012, when the api.netflix.com domain will be retired.
We will be retiring all existing versions of the catalog index files, to be replaced with new catalog index files.  The new files will be structurally the same as the 2.0 version but there will be two files, one for streaming and one for DVD.  The new files will be available in the coming weeks (we will post here with the new endpoints) and we plan to retire all other existing endpoints on September 15, 2012. 
We will be retiring the AppGallery pages found at http://www.netflix.com/AppGallery.  This is effective immediately. These pages were outdated and seldom used as people tend to go to various App stores and other Web sites to find applications.

To be clear, none of these changes will affect the Queue-related resources or data.
 Terms of Use Changes
The Terms of Use has been updated and will be effective today.  That said, for developers that have applications that need to be changed, they will be grandfathered in until September 15, 2012.  To view the revised Terms of Use, go to <a href=”http://developer.netflix.com/page/Api_terms_of_use”>http://developer.netflix.com/page/Api_terms_of_use</a>.
Support
From now on, we ask that you now contact Netflix API Support at publicapi@netflix.com as we will be retiring apisupport@netflix.com.  This change is effective immediately. 
If you have questions about these changes, please address them to this new email address or bring them up on the forums. 
- Daniel Jacobson, Director of Engineering for the Netflix API

over 12 years ago

Netflix Public API Will Continue to Support DVD from Official Netflix API Blog Feed

Several months ago, we announced that we will be retiring the DVD-related features from the public API.  This was done in anticipation of changes to our DVD business.  However, there will be no changes to our DVD business, so we will now continue DVD support in the public API.  This decision is effective immediately as we have not yet taken any action to remove these features.  
Daniel Jacobson
Director of Engineering - Netflix API

about 13 years ago

Upcoming Changes to the Open API Program from Official Netflix API Blog Feed

As of Oct. 14th, 2011, the Netflix API will be focused exclusively on offering content and functionality from the streaming catalog. As a result, we will be discontinuing the support of DVD-related features in the Open API. These changes are in an effort to better position the Netflix API towards the company’s long-term goal of internationalizing our streaming experience. Focusing the API towards streaming will better enable the company to create rich experiences in these new markets. Additionally, over time, we plan to open up the API to become international as well.
The rest of this post includes the list of changes that will take effect in October. Our goal is to make the transition as smooth as possible by gracefully degrading as many of these deprecated features as possible.
The following resources will have DVD-related content removed from them, but they will still work correctly with streaming content only:

users/user_ID/title_states
users/user_ID/feeds
catalog/titles
catalog/titles/autocomplete
catalog/titles/title/similar
catalog/people/person_ID/filmography

The following disc endpoints (on the left of the table) will continue to be valid endpoints but will return a comparable, streaming-oriented result set (the results provided by the right side of the table) until June 1st, 2012, at which time these endpoints will be removed:

Current Endpoint
New Endpoint Results

/users/user_ID/queues/disc
/users/user_ID/queues/instant

/users/user_ID/queues/disc/available
/users/user_ID/queues/instant/available

/users/user_ID/queues/disc/available/entry_ID
/users/user_ID/queues/instant/available/entry_ID

/users/user_ID/queues/disc/saved
/users/user_ID/queues/instant/saved

/users/user_ID/queues/disc/saved/entry_ID
/users/user_ID/queues/instant/saved/entry_ID

The following resources will be deprecated and will return 404 responses:

users/user_ID/at_home
users/user_ID/rental_history/shipped
users/user_ID/rental_history/returned
catalog/titles/discs/disc_ID

All category resources will be deprecated. The category scheme attribute will remain, but will no longer resolve. The affected resources include:

/categories/title_formats
/categories/award_types
/categories/screen_formats
/categories/rental_states
/categories/title_video_formats
/categories/languages
/categories/subtitle_languages
/categories/audio
/categories/genres
/categories/title_formats
/categories/queue_availability
/categories/title_states
/categories/mpaa_ratings
/categories/tv_ratings
/categories/ca_movie_ratings
/categories/container_formats
/categories/video_formats
/categories/audio_formats

All resources that return DVD-specific elements will continue to work, although the DVD-specific elements will no longer be returned. This will primarily affect the elements in the catalog/titles/title resource, which will no longer return DVD-related values in the title_formats category.
Currently, there are several endpoints for the catalog index across the versions of the API. Over time, we plan to collapse them into a single index. For this announcement, we plan to leave the current versions the same, although the number of titles will dramatically decrease. The title count will decrease because the index today has both streaming and DVD titles. From this change, it will only contain titles that are available in streaming. We will have future announcements the catalog index in the future as we attempt to globalize it and clean up the endpoints.
The JavaScript Widgets will continue to work, although the will be modified to only work for streaming titles. Titles will no longer be able to be added to the DVD queue through these widgets.
The documentation in the portal is currently being revised to reflect all of these changes. We hope to have it published to the site sometime next week.
During this transition, we will continue to work with our developer community to make the change as smooth as possible.
Daniel Jacobson, Director of Engineering – Netflix API

over 13 years ago

New "Series" Model from Official Netflix API Blog Feed

Summary: Netflix is moving toward treating a television series as a unified object — a single title — rather than as a set of seasons. You may notice some changes in the data you work with through the Netflix API, and you may want to change some of the logic of your application to better harmonize with this new conceptualization of the television series.
Description
Netflix is moving toward treating a television series as a unified object — a single title — rather than as a set of seasons or discs. The set-of-seasons or set-of-discs model is more of an artifact of the way DVDs are published and marketed, whereas the series-as-a-singular-thing is closer to the natural way of how subscribers think of a television series.  You can already see this change emerging on the main Netflix site, and you may also note some changes in the underlying data to support this change.
Note that for some series with a particularly large number of titles (more than 200), the series may be broken up into more than one title
<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
— for instance: organized by decade.
Impact
Changes in API Requests and Responses

<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
When you use the Netflix API to request the episodes associated with a series title, you will get a complete list of episodes for the series. This may be a larger list than you are used to getting for titles of this sort, and if your application intends to display information (such as the title state) for each episode, it will need to be prepared to use more (or bulkier) transmissions and more screen real estate in order to do so.
Episode titles will include information about the season number and episode number for each episode.
Here is an example response to a request for catalog/titles/series/70142415?v=2.0&expand=@episodes under the new model:
<catalog_title>
 <id>http://api.netflix.com/catalog/titles/series/70142415</id>
 <title short="The Sarah Silverman Program" regular="The Sarah Silverman Program"/>
 <link href="http://api.netflix.com/catalog/titles/series/70142415/box_art" rel="http://schemas.netflix.com/catalog/titles/box_art" title="box art"/>
<link href="http://api.netflix.com/catalog/titles/series/70142415/synopsis" rel="http://schemas.netflix.com/catalog/titles/synopsis" title="synopsis"/>
<link href="http://api.netflix.com/catalog/titles/series/70142415/short_synopsis" rel="http://schemas.netflix.com/catalog/titles/synopsis.short" title="short synopsis"/>
<release_year>2007</release_year>
<category scheme="http://api.netflix.com/categories/genres" label="Television" term="Television"/>
<category scheme="http://api.netflix.com/categories/genres/2471" label="TV Sketch Comedies" term="TV Sketch Comedies"/>
<category scheme="http://api.netflix.com/categories/genres/2197" label="TV Comedies" term="TV Comedies"/>
<category scheme="http://api.netflix.com/categories/maturity_level" label="130" term="130"/>
<link href="http://api.netflix.com/catalog/titles/series/70142415/screen_formats" rel="http://schemas.netflix.com/catalog/titles/screen_formats" title="screen formats"/>
<link href="http://api.netflix.com/catalog/titles/series/70142415/cast" rel="http://schemas.netflix.com/catalog/people.cast" title="cast"/>
<link href="http://api.netflix.com/catalog/titles/series/70142415/seasons" rel="http://schemas.netflix.com/catalog/titles.seasons" title="seasons"/>
<link href="http://api.netflix.com/catalog/titles/series/70142415/episodes" rel="http://schemas.netflix.com/catalog/titles.programs" title="episodes">
<catalog_titles>
  <number_of_results>22</number_of_results>
<link href="http://api.netflix.com/catalog/titles/programs/190213/70137452" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 1: Officer Jay"/>
<link href="http://api.netflix.com/catalog/titles/programs/190214/70137456" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 1: Humanitarian of the Year"/>
<link href="http://api.netflix.com/catalog/titles/programs/190215/70137453" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 1: Positively Negative"/>
<link href="http://api.netflix.com/catalog/titles/programs/190216/70137454" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 1: Not Without My Daughter"/>
<link href="http://api.netflix.com/catalog/titles/programs/190217/70137455" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 1: Muffin' Man"/>
<link href="http://api.netflix.com/catalog/titles/programs/190218/70137451" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 1: Batteries"/>
<link href="http://api.netflix.com/catalog/titles/programs/190219/70137457" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 1: Bored of the Rings"/>
<link href="http://api.netflix.com/catalog/titles/programs/190220/70137460" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 1: Joan of Arf"/>
<link href="http://api.netflix.com/catalog/titles/programs/190221/70137459" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 1: Face Wars"/>
<link href="http://api.netflix.com/catalog/titles/programs/190222/70137458" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 1: Doodie"/>
<link href="http://api.netflix.com/catalog/titles/programs/190223/70137462" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 1: Ah, Men"/>
<link href="http://api.netflix.com/catalog/titles/programs/190224/70137461" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 1: Maid to Border"/>
<link href="http://api.netflix.com/catalog/titles/programs/180818/70137469" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 2: High, It's Sarah"/>
<link href="http://api.netflix.com/catalog/titles/programs/190929/70137464" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 2: The Mongolian Beef"/>
<link href="http://api.netflix.com/catalog/titles/programs/180820/70137466" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 2: Making New Friends"/>
<link href="http://api.netflix.com/catalog/titles/programs/180821/70137468" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 2: Patriot Tact"/>
<link href="http://api.netflix.com/catalog/titles/programs/180822/70137463" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 2: Pee"/>
  <link href="http://api.netflix.com/catalog/titles/programs/180823/70137465" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 2: There's No Place Like Homeless"/>
<link href="http://api.netflix.com/catalog/titles/programs/180824/70137467" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 2: Fetus Don't Fail Me Now"/>
<link href="http://api.netflix.com/catalog/titles/programs/180825/70137470" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 2: I Thought My Dad Was Dead, But It Turns Out He's Not"/>
<link href="http://api.netflix.com/catalog/titles/programs/180826/70137471" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 2: Kangamangus"/>
<link href="http://api.netflix.com/catalog/titles/programs/180827/70137472" rel="http://schemas.netflix.com/catalog/title" title="The Sarah Silverman Program: Season 2: Vol. 2: Vow Wow"/>
</catalog_titles>
</link>
<average_rating>3.0</average_rating>
<link href="http://api.netflix.com/catalog/titles/series/70142415/similars" rel="http://schemas.netflix.com/catalog/titles.similars" title="similars"/>
 <link href="http://www.netflix.com/Movie/The_Sarah_Silverman_Program/70142415" rel="alternate" title="web page"/>
 <link href="http://movi.es/VofWB" rel="http://schemas.netflix.com/catalog/title/ref.tiny" title="Tiny URL"/>
</catalog_title>
Subscriber Expectations
Subscribers will come to expect that when they decide to "Add" a series to their queue, they will be adding the whole series — not just a season or a disc from the series. They will also expect, at the end of viewing details about one episode, to be given the choice to see the next episode in the series, without any additional clunkiness if this means passing over a (now-obsolete) season or disc boundary.
Subscribers may see changes to some of the information they have contributed. For instance if they formerly had ratings for multiple seasons of a series, these ratings will be consolidated into a single rating for the series as a whole. If they had formerly added certain seasons of a series to their queues, they may find these replaced in their queues by the series itself (if we've done this correctly as planned, the subscriber won't lose their place in the series during this switch).

over 13 years ago

Changes to genres and playback_bookmark from Official Netflix API Blog Feed

Genres Are Being Replaced as of June 15
Titles in the Netflix title catalog currently have genres associated with them. For instance, if you request the <catalog_title> record for the animated musical movie Sita Sings the Blues (GET catalog/titles/movies/70113539?v=2.0), the response contains the following genre information:
<?xml version="1.0" encoding="utf-8"?><catalog_title> …  <category scheme="http://api.netflix.com/categories/genres"            label="Music &amp; Musicals" term="Music &amp; Musicals"></category>  <category scheme="http://api.netflix.com/categories/genres/623"            label="Animation for Grown-ups" term="Animation for Grown-ups"></category>  <category scheme="http://api.netflix.com/categories/genres/2316"            label="Contemporary Movie Musicals" term="Contemporary Movie Musicals"></category>  <category scheme="http://api.netflix.com/categories/genres/343"            label="Indie Dramas" term="Indie Dramas"></category>  <category scheme="http://api.netflix.com/categories/genres/315"            label="Indie Dramas" term="Indie Dramas"></category> …</catalog_title>
On June 15th, 2011, these genres are going away, to be replaced by a new classification model. This new model will be more flexible and more well-tuned to the diverse expectations of a global movie-watching audience.
What this means for you as an API developer is that you should identify any parts of your applications that rely on the current genre structure and remove this dependency in preparation for the rollout of the new classification model. Details of this new model will soon follow here at http://developer.netflix.com/.
The playback_bookmark element will always be zero as of June 30

<meta content="text/html; charset=utf-8" http-equiv="content-type"/>

If you request the users/user_ID/title_states resource for an instant-watch title that the subscriber has (at least partially) watched, the record for such a title has (in API versions 1.5 and higher) included a <playback_bookmark> element. That element gave an offset, in seconds, into the title’s play time to indicate where the subscriber last stopped or paused play.
At the end of June, 2011, as a side-effect of Netflix system changes, the playback bookmark element will return a default value of zero whether or not the subscriber has played, paused, or stopped the title. This affects API versions 1.5 or higher.
Netflix may re-introduce this feature in a future release of the Netflix API, but for now you are advised to hide, disable, or remove any features of your applications that rely on the the <playback_bookmark> element.

over 13 years ago

Affiliate Partner Change from Official Netflix API Blog Feed

Netflix has partnered with the Google Affiliate Network to administer our affiliate revenue going forward.  If you already have a Linkshare account, you are encouraged to migrate your links to the Google Affiliate Network as soon as possible so that your revenue stream continues.  This partnership offers better tracking on our side, as well as deep linking to any page within the Netflix site so that our developers can provide a more customized user experience.
All the details about setting up your links for affiliate revenue can be found on our Affiliate Program page.  Let us know if you have any questions or issues getting your links set up.

over 13 years ago

API Rockstars Wanted from Official Netflix API Blog Feed

Netflix is the biggest consumer of the largest and most complex cloud computing environment, and is responsible for double-digit percentages of web traffic on a daily basis. The solutions we design define the cutting edge of consumer video provision. By joining our API team, you will be helping to fashion the state of the art for this space. As an engineer at Netflix, it won't be enough for you to be up-to-date on the latest standards and practices — you will need to look beyond them and help to explore the next steps of our industry in an ever-changing world where consumer expectations have a Moore's Law of their own.
Almost every day brings a new developer or partner to the Netflix API, and we often feel like we can't enable all the APIs we wish we could fast enough. To address both of those challenges, the Netflix API team is growing!
This is a developer forum — you are developers — you know other developers. Please help us find rockstars for each of these roles:

API Integration, Technical Operations Manager
API Integration, Technical Program Manager
API Integration, Technical Support Engineer
Senior Software Engineer, API
Senior Software Engineer/Architect, Web API Platform
Senior Software Engineer in Test, API Platform Engineering

Interested parties can learn more about these positions and apply for them by using the job links above. For more information on working at Netflix, please see http://www.netflix.com/Jobs.

over 13 years ago

Return of Netflix Widgets from Official Netflix API Blog Feed

The API Team is happy to announce a significant upgrade to the Netflix Widget API. 
We hope the new widgets are a significant step forward, both in terms of what's offered and how easy it is to use. Gone are the days when you had to search the catalog, find a movie's ID, figure out how (or if) we had it currently available, and cobble together your own code, which would then break as soon as the movie left the catalog.  Our new Widget Builder lets you search for a movie, find the one you like, add or remove widget options, see what it looks like right there on the page, and copy the code you need when you're happy.
We have two new widgets, Spotlight and Bubble.  Both include rich information: movie descriptions, box art, add and play buttons, and even previews!
Spotlight widgets are embeddable badges, great for blog posts or sidebars about a specific movie.  You can choose from two different layouts: a horizonal layout which is ideal for inclusion in the body of your pages, or a vertical layout that was designed more for sidebar placement.  You can select what movie information you want to appear in the widget and modify its width.  If you're a member of the Netflix affiliate program, you can add your ID and receive commissions for new referrals. You can even add buttons to allow your readers to share a movie on Facebook or Twitter.
 
The Bubble Widget is a fire-and-forget script that automatically enhances certain Netflix links on your page. When your readers mouse over those special links, they will see floating bubbles, just like the ones on Netflix.

Both widgets have been designed to degrade gracefully if JavaScript is not available.  This is great for bloggers, since the "rich" version will appear if the blog post is displayed on a JavaScript-enabled page, and a Netflix movie link will appear for RSS readers and other non-JavaScript clients.
<script src="http://jsapi.netflix.com/us/api/w/s/sp100.js"></script>
The widgets have been tested on a variety of web sites and blogs to ensure that they'll work well on your pages.  If you do find any issues, please let us know about it in our forum.
We're already aware of a few minor fit-and-finish issues and will be addressing them shortly.  Currently the instant watching player launched when the Play button is pressed has a white border; this will be fixed early next week.  There's also additional work ahead to integrate the affilate program with the Bubble Widget, and to have a better description for the movie when sharing on Facebook.
We're very excited to see what you'll do with this new way to integrate with the Netflix service.  Happy coding cutting and pasting!
 
The Netflix API Team

over 13 years ago

New API Proposal: Bulk Queue Update from Official Netflix API Blog Feed

This is our first blog posting soliciting feedback on a future Netflix API.  The post is also the first by Hans Granqvist, one of our API team developers.      -Mike

A queue bulk operation makes it easier to perform queue managment. Currently one must make do with multiple API calls to adds, deletes, format changes, and moves. The set of calls can be tricky to get right, and each call also counts against your quota.We're adding bulk operations to the API. Here are the two main types of APIs we're considering. Let us know which one you think works best and why!
QUEUE STATE
The bulk operation input is a representation of what the queue should look like.  It ignores current queue state and replaces the queue.  If a title contains multiple discs those discs will be added beginning at the index specfiied.  The indices of other titles with are adjusted to make room for the additional titles. Since this is a modification in place, is idempotent, and ignores previous state of the queue it uses the PUT method.
PUT /users/userID/queues/{disc|instant}
Parameters
title_ref[n]

req.   The catalog title to be in position [n] of the queue.

format[n]

opt.   The format of the title in position [n]. Default format for queue used if not specified.

Etag

opt.   ETag value returned last time queue was read.

OAuth

req.   Consumer key + access token + signature

Result      
200Success

400 (660)

If given format is not available for the user in the queue

304

If incoming queue representation is equal to current.

412

Etag concurrency error

500

Internal error. Partial replace of queue may have occurred.

Possible variations include:

Use XML/JSON to pass the queue params.
Impose an order to the title references, so accepting a sequence of {title_ref,format} would be enough to represent the queue without the added positional marker.
In addition, we could accept a subset of the queue with the same semantics as above, so that the subset given replaces corresponding subset in the queue, and queue items skipped will remain unchanged.  This would mean that bulk deletes wouldn't be possible, since omitted queue items would be skipped vs. deleted.

SEQUENTIAL OPERATIONS For this version, input is a list in terms of inserts, deletions, and modifications, intended to be executed in sequence.Since this is a modification that is not idempotent (issuing the same request twice may change the queue twice) it uses the POST method.The resource is the same as other proposal. There is a clash here with the existing POST operation on the queue, so care has to be taken to pass input params correctly.
  POST /users/userID/queues/{disc|instant}
Input formatThe input format to this proposal uses XML/JSON.Parameters
inject_after  Keyword takes a position + list of titlesdeleted       Keyword takes a list of titles
Template:
{  'inject_after' : [n, title foo, ..., title bar], 'delete' : [title baz}]}
Example:
{  "delete" :     [   "http://www.netflix.com/Movie/The_Tale_of_Despereaux/70075482",    "http://www.netflix.com/Movie/Lakeview_Terrace/70098896"   ],   "inject_after" : [1,    "http://www.netflix.com/Movie/Mac_and_Me/70000001"  ]}
Results
We anticipate being able to use the set of results codes that is used by existing API operations around queue updates.
To discuss: should multiple 'inject_after' and 'delete' arrays be supported? If so, then a second 'inject_after' with a positional argument will have dependencies on previous inserts (since they shift elements in the queue) -- which is very tricky to get right, especially when adding a TV seasons that results in multiple DVD adds.

over 13 years ago

Post-Launch Bug Fixes from Official Netflix API Blog Feed

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)

over 13 years ago

App Gallery Open for Developer Submissions from Official Netflix API Blog Feed

The soon-to-be-released Netflix App Gallery is now open for developer submissions!  You can create your entry for the gallery by going to the "My Account" page on the developer portal and then selecting the "My App Gallery Entry" link.
A couple items to note:

We'll launch the Gallery to Netflix members when we feel we have a minimum list of applications.  We don't expect this to take that long given the number of apps out there.
While the Entry details page says that the application description is limited to "100 chars or less", we'll support longer descriptions of up to 600 characters on the application detail page and show the first 200 characters of that description when your application will be shown in list views.  Note that you can supply a link from your app entry to a more complete application description, download link, etc.
Reminder: each submission will be reviewed for Terms of Use compliance before it is published to the Gallery.

We're looking forward to promoting your applications to Netflix subscribers!  Please comment on this post using the link below if you have any questions or comments around submissions.

over 13 years ago