I am querying Amazon's Product Advertising API for Instant Video (streaming) results. Everything is working fine -- except that there is some missing information:
Descriptions are not included in results. For example, on Amazon's website the movie "Food, Inc" (http://www.amazon.com/Food-Inc/dp/B002VRZEYM) has the description "An unflattering look inside America's corporate controlled food industry.". When queried via the API, however, no description is returned at all.
Titles of TV shows are not included in results. For example, if you search for the 2nd episode of season 1 of Arrested Development (called "Top Banana") on Amazon's website (http://www.amazon.com/gp/product/B000N2VRJ8), you will get the full name of the TV show, season #, episode #, and episode name. When queried by the API, however, only the episode name is returned.
Does anyone know of a solution to these problems? FYI, the nodeId I am using for my search is 2858778011. Thanks!
In order to get more details, you'll need to set the
ResponseGroup
parameter in your request. See theResponseGroup
section of the ItemLookup documentation to see the different Response Groups that you can use.For example, setting the
ResponseGroup
parameter toLarge
orMedium
orSmall
or evenItemAttributes
will give you the description:for Food, Inc (
B002VRZEYM
) and theTitle
:for Arrested Development season 1 episode 2 (
B000N2VRJ8
).I had the same problem, while trying to query the Amazon API for Prime Instant Video content. Although this question is kinda old, there are probably some people like me who are interested in a detailed answer, especially for the second part (2.).
Like Jonathan Spooner already said, you have to set a response group that returns the data you're interested in. Official documentation: Response Groups - Product Advertising API. In your case, I think, the
ResponseGroup
Small
should do.If you want to get the title of a TV show, which contains a certain episode, you have to set the response group
RelatedItems
in your request, too (you can set multiple response groups in one request). You will also have to name aRelationshipType
, otherwise the request will fail. For Episode -- Season - Relationships you chooseEpisode
.With
RelatedItems
, the result will contain a node named<RelatedItems>
. You will find the season item in there, which's title should be something like " Arrested Development - Season 1 [HD]".Note: If you really just want the TV show title, you could either parse the season name for it or you could make another
ItemLookup
with the seasons ASIN: set the response groupRelatedItems
again, but this time withRelationshipType=Season
. This will return Season - TV Series - Relationships. The related item will contain the TV Show in general. (But the title could have a suffix like [HD] anyway)Here you have a list with all relationship types: Relationship Types - Product Advertising API