mirror of
https://github.com/dkam/paapi.git
synced 2025-12-28 07:04:53 +00:00
48 lines
1.1 KiB
Ruby
48 lines
1.1 KiB
Ruby
require 'byebug'
|
|
|
|
module AwsPaa
|
|
class Request
|
|
include AwsRequest
|
|
attr_accessor :client, :marketplace, :timestamp, :datestamp, :amzstamp, :resources, :service
|
|
attr_accessor :headers, :payload
|
|
|
|
def initialize(client:)
|
|
@client = client
|
|
@marketplace = client.marketplace
|
|
@partner_tag = client.partner_tag
|
|
@partner_type = 'Associates'
|
|
|
|
@resources = [
|
|
"Images.Primary.Large",
|
|
"ItemInfo.ContentInfo",
|
|
"ItemInfo.ProductInfo",
|
|
"ItemInfo.Title",
|
|
"ItemInfo.ExternalIds",
|
|
]
|
|
end
|
|
|
|
def get_items(item_ids:, **options)
|
|
item_ids = Array(item_ids)
|
|
|
|
payload = { ItemIds: item_ids, Resources: @resources }
|
|
|
|
do_request(op: :get_items, payload: payload)
|
|
end
|
|
|
|
def get_variations(asin:)
|
|
payload = { ASIN: asin, Resources: @resources }
|
|
|
|
do_request(op: :get_variations, payload: payload)
|
|
end
|
|
|
|
def search_items(keywords: )
|
|
payload = { Keywords: keywords, Resources: @resources }
|
|
|
|
do_request(op: :search_items, payload: payload)
|
|
end
|
|
|
|
def get_browse_nodes
|
|
raise NotImplemented
|
|
end
|
|
end
|
|
end |