Although there is no direct support for this through the search API, one of the ways that this could be done is to walk through the catalog (you could access the catalog through http://api.netflix.com/catalog/titles/index) and filter for the titles with genre = "the genre you are interested in", in this case (action).
It's about 180MB. It will be much smaller when we enable inline gzip in the near future.
The typical usage pattern is to download this file daily, so it's not really taxing our users. If we start to to see too frequent access by badly designed apps, we'll put a specific access limit on it.
In my opinion, this is a really limiting factor of the API. It now places the burden on the developer to create a server solution for something that could easily be surfaced in the API (which essentially limits all but commercial implementations from being viable).
90% of the Netflix site is dedicated to browsing the catalog, either via genres, new releases, critics' picks, etc...
I'd love to have a chat with you sometime about what you do see in site usage. Anyway, we are just building a small lab, but we think that it is necessary for the experience.
Either way we found them here, though: http://www.netflix.com/RSSFeeds
You can have a look at the design direction for the app on our blog: experience.thirteen23.com
> You could access the catalog through http://api.netflix.com/catalog/titles/index and write the file out to get a local copy.
Can you provide some simple code to do this using just the API Key and the Shared Secret?
Unknown
–
3 years ago
foobaz, if you send me an email at grauenwolf@gmail.com I will set you up with my .NET code. It is still very much a work in progress, but I am at the point where I can download the index in two lines:
Dim con As New NetflixConnection(consumerKey, consumerSecret)
con.Catalog.DownloadIndex("c:\temp\index.xml")
I used the Accept-Encoding parameter in my call parameters, set its value to gzip and tried getting the catalog index file by quering http://api.netflix.com/catalog/titles/index using makeConsumerSignedApiCall from the java netflix api.
This gives "out of memory error" even though I increased the memory limit.
Please let me know if the way of specifying Accept-Encoding is correct.
@John: At the bottom of the "Resources" page, i've got a tiny little tutorial about fetching catalog entries using PHP and Curl. For the catalog index, you probably don't want to just have it output to the screen, obviously, but route the result to a file. The PHP docs have lots of info about doing that (See "curl_setopt" for details). You can get the full catalog using the "http://api.netflix.com/catalog/titles/index" service.
@priyanka: I'm not 100% sure how that library works, but the catalog index is close to 320MB uncompressed. If you need to pre-assign memory for the receiving buffer, make sure that you're allocating at least that much (I'd actually recommend 400MB to allow for growth). A potentially better solution would be to have the class write the file directly to disk. I believe that the code is available for that class should you need to modify it.
I am using the netflix api on mobile devices - I can't download 300MB to a user's android regardless of how infrequently. For now I may write a PHP script to act as a search service.
Are there any plans to implement a genre/actor search in the future?
That feature, and more, are definitely on the search roadmap, but it's going to be awhile still until it appears in the API. I wouldn't expect it before late Q1.
Genre searching is pretty easy, but when you get into sorts, other search or filter criteria it gets complex from both an implementation and interface perspective pretty quickly. It's probably the #1 feature in our backlog from a desirability perspective, but also one of the most difficult to implement.
The best short-term option is to download the catalog index, park it on a server in AWS or something and then have your client call it for catalog subsets.
Can one search for a Genre?
Is there a way I can say show me all movies with genre of action?
Thanks
Message edited by gobanjoboy 8 months ago
Tags
priya – 3 years ago
Although there is no direct support for this through the search API, one of the ways that this could be done is to walk through the catalog (you could access the catalog through http://api.netflix.com/catalog/titles/index) and filter for the titles with genre = "the genre you are interested in", in this case (action).
-Priya.
gobanjoboy – 3 years ago
Any idea what the total size of the catalog index xml is? Doesn't this method task your servers?
Michael Hart – 3 years ago
It's about 180MB. It will be much smaller when we enable inline gzip in the near future.
The typical usage pattern is to download this file daily, so it's not really taxing our users. If we start to to see too frequent access by badly designed apps, we'll put a specific access limit on it.
foobaz utne – 3 years ago
Can we just download the index directly?
Michael Hart – 3 years ago
It depends on what you mean by "directly". Can you explain?
foobaz utne – 3 years ago
I mean a direct link to the xml file you said was 180 MB so we can have a local copy to test on.
priya – 3 years ago
You could access the catalog through http://api.netflix.com/catalog/titles/index and write the file out to get a local copy.
thirteen23 – 3 years ago
In my opinion, this is a really limiting factor of the API. It now places the burden on the developer to create a server solution for something that could easily be surfaced in the API (which essentially limits all but commercial implementations from being viable).
90% of the Netflix site is dedicated to browsing the catalog, either via genres, new releases, critics' picks, etc...
Michael Hart – 3 years ago
I can tell you that very little of the site usage is browsing. It's much less than search and recommendations.
thirteen23 – 3 years ago
Hi Michael-
I'd love to have a chat with you sometime about what you do see in site usage. Anyway, we are just building a small lab, but we think that it is necessary for the experience.
Either way we found them here, though: http://www.netflix.com/RSSFeeds
You can have a look at the design direction for the app on our blog: experience.thirteen23.com
foobaz utne – 3 years ago
> You could access the catalog through http://api.netflix.com/catalog/titles/index and write the file out to get a local copy.
Can you provide some simple code to do this using just the API Key and the Shared Secret?
Unknown – 3 years ago
foobaz, if you send me an email at grauenwolf@gmail.com I will set you up with my .NET code. It is still very much a work in progress, but I am at the point where I can download the index in two lines:
Dim con As New NetflixConnection(consumerKey, consumerSecret)
con.Catalog.DownloadIndex("c:\temp\index.xml")
foobaz utne – 3 years ago
Thanks priya. That worked.
priyanka – 3 years ago
Hi,
Can anyone suggest a way to get catalog index file using java NetflixAPIClient?
Thanks
JR Conlin – 3 years ago
It's a standard call to http://api.netflix.com/catalog/titles/index. You should be able to fetch the data using a regular call.
Be advised that the returned data set is large (~300 MB) so you may wish to fetch this data directly to a file.
Michael Hart – 3 years ago
Also read the API conventions documentation on gzip to make sure you're making the download as small as possible.
priyanka – 3 years ago
I used the Accept-Encoding parameter in my call parameters, set its value to gzip and tried getting the catalog index file by quering http://api.netflix.com/catalog/titles/index using makeConsumerSignedApiCall from the java netflix api.
This gives "out of memory error" even though I increased the memory limit.
Please let me know if the way of specifying Accept-Encoding is correct.
Thanks
priyanka – 3 years ago
Any update on the Accept-Encoding property in java API.
Thanks,
Priyanka
John Petrilli – 3 years ago
any help on how to fetch the entire catalog like this using php?
I am at a loss.
I have my app completely working but this would make my app much better if I could do this once a day.
JR Conlin – 3 years ago
@John: At the bottom of the "Resources" page, i've got a tiny little tutorial about fetching catalog entries using PHP and Curl. For the catalog index, you probably don't want to just have it output to the screen, obviously, but route the result to a file. The PHP docs have lots of info about doing that (See "curl_setopt" for details). You can get the full catalog using the "http://api.netflix.com/catalog/titles/index" service.
@priyanka: I'm not 100% sure how that library works, but the catalog index is close to 320MB uncompressed. If you need to pre-assign memory for the receiving buffer, make sure that you're allocating at least that much (I'd actually recommend 400MB to allow for growth). A potentially better solution would be to have the class write the file directly to disk. I believe that the code is available for that class should you need to modify it.
priyanka – 3 years ago
Thanks for your help.
I got the catalog file!
John Petrilli – 3 years ago
Thanks JR. I am going to give it try tomorrow.
:)
eddiewebb – 2 years ago
I am using the netflix api on mobile devices - I can't download 300MB to a user's android regardless of how infrequently. For now I may write a PHP script to act as a search service.
Are there any plans to implement a genre/actor search in the future?
Regards,
Eddie
Michael Hart – 2 years ago
That feature, and more, are definitely on the search roadmap, but it's going to be awhile still until it appears in the API. I wouldn't expect it before late Q1.
Genre searching is pretty easy, but when you get into sorts, other search or filter criteria it gets complex from both an implementation and interface perspective pretty quickly. It's probably the #1 feature in our backlog from a desirability perspective, but also one of the most difficult to implement.
The best short-term option is to download the catalog index, park it on a server in AWS or something and then have your client call it for catalog subsets.