Tutorial :How do I get a book graphic and description from the Amazon Book API?


This URL sends an ISBN number to Amazon and gets back a small bit of XML including author, title, and publisher.

However, I also want to get small, medium and large graphic and book descriptions of the title.

Problem: I can find no REST URL examples/documention that work, either at Google or when logged into my "AWS Account" at Amazon Associates.

I find a lot of examples from 2003-2005 but they are all out-of-date and give errors, it seems that Amazon's cloud web services have obfuscated their simple REST API documentation for their books.

Can anyone point me to some documentation on how I can get detailed information about books at Amazon via REST/XML?

Here's what I have tried so far.


So, allow me to answer my own question, from another question here I found this useful PDF and the following URL gets images for instance, see "ResponseGroup"


ResponseGroup is the key, and if you specify more than one (comma separated) the results are stitched together

That is, "&ResponseGroup=Images,Small" returns the minimal details and images about products


I have build some functions to grab amazon xml using php and curl using simple functions just like this:

    <?php  function Get_Amazon_XML($tag, $api, $secretkey, $region, $department, $query)  {  $time = time() + 10000;  $method = 'GET';  $host = 'webservices.amazon.'.$region;  $uri = '/onca/xml';  $slug["Service"] = "AWSECommerceService";  $slug["Operation"] = "ItemSearch";  $slug["SubscriptionId"] = $api;  $slug["AssociateTag"] = $tag;  $slug["SearchIndex"] = $department;  $slug["Condition"] = 'All';  $slug["Keywords"] = $query;  $params["ItemPage"] = 1;  $slug["TruncateReviewsAt"] = '500';  $slug["ResponseGroup"] = 'Images,ItemAttributes,EditorialReview';  $slug["Timestamp"] = gmdate("Y-m-d\TH:i:s\Z",$time);  $slug["Version"] = "2011-08-01";  ksort($slug);  $query_slug = array();  foreach ($slug as $slugs=>$value)  {  $slugs = str_replace("%7E", "~", rawurlencode($slugs));  $value = str_replace("%7E", "~", rawurlencode($value));  $query_slug[] = $slugs."=".$value;  }  $query_slug = implode("&", $query_slug);  $signinurl = $method."\n".$host."\n".$uri."\n".$query_slug;  $signature = base64_encode(hash_hmac("sha256", $signinurl, $secretkey, True)); // Get Amazon Signature API  $signature = str_replace("%7E", "~", rawurlencode($signature));  $request = "http://".$host.$uri."?".$query_slug."&Signature=".$signature;  $ch = curl_init();  curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (compatible; Konqueror/4.0; Microsoft Windows) KHTML/4.0.80 (like Gecko)");  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  curl_setopt($ch, CURLOPT_URL, $request);  curl_setopt($ch, CURLOPT_TIMEOUT, 10);  $response = curl_exec($ch);  curl_close($ch);  return $response;  }  ?>  

Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Next Post »