blog.humaneguitarist.org

HammerFlix 2: Terror of the lost API Keys

[Mon, 29 Aug 2011 00:20:32 +0000]
Update, November 27, 2011: If you're looking for a live list of Hammer Films [http://www.hammerfilms.com/] streaming on Netflix you can see it here [http://blog.humaneguitarist.org/uploads/HammerFlicks/currentVersion/HammerFlicks.php]. To read more about the HammerFlicks project, click here [http://blog.humaneguitarist.org/projects/hammerflicks/]. ... So, like six months ago I posted [http://blog.humaneguitarist.org/2011/02/27/hammerflix/] about an idea involving the Netflix API and trying to get a list of Hammer horror films available for streaming. The good news is I've decided to carve out some time each Saturday and actually make this into a little pet project. The bad news is that in editing the information about my app, I accidentally deleted my API keys and have to wait ... and wait ... on the news ones getting approved, which apparently is a process experiencing some delays lately [http://developer.netflix.com/forum/read/71162/1#comment-124565]. Bummer. Anyway, there are some interesting things that have happened since last time. 1. The Netflix API is now totally about the Watch Instantly (streaming) catalog. See here [http://developer.netflix.com/blog/read/Upcoming_Changes_to_the_Open_API_Program]. 2. This [http://developer.netflix.com/page/resources/sample_php] PHP code example of hitting up the API which used to work out of the box now seems to require that I surround the keys like "term" and "output" with quotation marks a la: $arguments = Array( 'term'=>'fargo', 'expand'=>'formats,synopsis', 'max_results'=> '1', 'output'=>'json' ); 3. Netflix now has this open OData API [http://developer.netflix.com/docs/OData_Catalog] in the works, too. So I might not even need to use the old API that requires a key ... That's to say that while I need to read more, if the ODdata API is also only for streaming titles then I can still retrieve the Netflix movie identifier from the OData API for given titles. What this means is that I should still be able to pass a list of Hammer film titles to the OData API and scrape the results for the movie's identifier. This in turn means I can create a link so I can start streaming the movie by clicking on a hyperlink. Here's an OData example for "The Name of the Rose" taken from the Netflix developer site: http://odata.netflix.com/Catalog/Titles?$filter=Name%20eq%20'The%20Name%20of%20The%20Rose' [http://odata.netflix.com/Catalog/Titles?$filter=Name%20eq%20'The%20Name%20of%20The%20Rose'] Looking at the source for the results reveals the Netflix movie identifier like so: <d:Url>http://www.netflix.com/Movie/The_Name_of_the_Rose/<em>70000552</em></d:Url> With that identifier, I should just be able to pass a link to the streaming page like this (must be logged into Netflix): http://movies.netflix.com/WiPlayer?movieid=70000552 Ok, I just clicked on that and now there's a good possibility I'll be watching "The Name of the Rose" tonight ... or not. ;(