Class: RightScale::CloudApi::ECS::PA::Manager

Inherits:
CloudApi::Manager
  • Object
show all
Defined in:
lib/cloud/ecs/pa/manager.rb

Overview

Product Advertising API (PA) compatible manager (thread safe).

If there is a new API version available just pass it to the manager!

Examples:

require "right_aws_api"

# Create a manager to access Product Advertising API.
paa = RightScale::CloudApi::ECS::PA::Manager.new(key, secret, 'https://webservices.amazon.com')

paa.ThisCallMustBeSupportedByPA('Param.1' => 'A', 'Param.2' => 'B') #=> Hash
paa.ItemSearch(
  'AssociateTag'  => 'weird-tag',
  'BrowseNode'    => 2625374011,
  'MaximumPrice'  => 2000,
  'MinimumPrice'  => 2000,
  'ResponseGroup' => 'SalesRank',
  'SearchIndex'   => 'DVD',
  'Sort'          => 'salesrank',
 )  #=>
    {"ItemSearchResponse"=>
      {"@xmlns"=>"http://webservices.amazon.com/AWSECommerceService/2013-08-01",
       "OperationRequest"=>
        {"HTTPHeaders"=>{"Header"=>{"@Name"=>"UserAgent", "@Value"=>"Ruby"}},
         "RequestId"=>"a21817e1-f828-4a80-8b6a-c27e320b92e2",
         "Arguments"=>
          {"Argument"=> ..... }}}
paa.ItemLookup(
  'AssociateTag'  => 'weird-tag',
  'IdType'        => 'ASIN',
  'ItemId'        => 'B00TRAO8HK',
  'ResponseGroup' => 'OfferSummary',
) #=>
    {"ItemLookupResponse"=>
      {"@xmlns"=>"http://webservices.amazon.com/AWSECommerceService/2013-08-01",
       "OperationRequest"=>
        {"HTTPHeaders"=>{"Header"=>{"@Name"=>"UserAgent", "@Value"=>"Ruby"}},
         "RequestId"=>"1c199f5d-3794-40b3-9fc4-33316010d130",
         "Arguments"=> { ... },
       "Items"=>
        {"Request"=> { ... },
         "Item"=>
          {"ASIN"=>"B00TRAO8HK",
           "OfferSummary"=>
            {"LowestNewPrice"=>
              {"Amount"=>"2000",
               "CurrencyCode"=>"USD",
               "FormattedPrice"=>"$20.00"},
             "LowestUsedPrice"=>
              {"Amount"=>"2654",
               "CurrencyCode"=>"USD",
               "FormattedPrice"=>"$26.54"},
             "TotalNew"=>"23",
             "TotalUsed"=>"2",
             "TotalCollectible"=>"0",
             "TotalRefurbished"=>"0"}}}}}
paa = RightScale::CloudApi::ECS::PA::Manager.new(key, secret, 'https://webservices.amazon.com', :api_version => "2021-12-31")

See Also: