class RakutenProductApi::Client
Constants
- REFRESH_TOKEN_LEEWAY
Attributes
authenticate[RW]
consumer_key[RW]
consumer_secret[RW]
password[RW]
sid[RW]
username[RW]
Public Class Methods
new(sid: RakutenProductApi.sid, username: RakutenProductApi.username, password: RakutenProductApi.password, consumer_key: RakutenProductApi.consumer_key, consumer_secret: RakutenProductApi.consumer_secret, access_token: nil, access_expires_at: nil)
click to toggle source
# File lib/rakuten_product_api/client.rb, line 15 def initialize(sid: RakutenProductApi.sid, username: RakutenProductApi.username, password: RakutenProductApi.password, consumer_key: RakutenProductApi.consumer_key, consumer_secret: RakutenProductApi.consumer_secret, access_token: nil, access_expires_at: nil) @authenticate = Authenticate.new(sid: sid, username: username, password: password, consumer_key: consumer_key, consumer_secret: consumer_secret, access_token: access_token, access_expires_at: access_expires_at) @sid = sid @username = username @password = password @consumer_key = consumer_key @consumer_secret = consumer_secret end
Public Instance Methods
api_request(payload)
click to toggle source
# File lib/rakuten_product_api/client.rb, line 42 def api_request(payload) params = payload.map { |k, v| "#{k}=#{v}" }.join("&") uri = URI("https://api.rakutenmarketing.com/productsearch/1.0?#{params}") res = Net::HTTP.start(uri.host, uri.port, use_ssl: true) do |http| req = Net::HTTP::Get.new(uri) req["Authorization"] = @authenticate.auth_header req["Accept"] = "application/xml" http.request(req) end puts "RESPONSE CODE #{res.code} received" if res.code != "200" res end
search(keyword: nil, **options)
click to toggle source
# File lib/rakuten_product_api/client.rb, line 38 def search(keyword: nil, **options) Response.new(api_request(options.merge(keyword: keyword))) end