Ruby
Ruby
MWS List Orders (Amazon Marketplace Web Service)
See more Amazon MWS Examples
Send an MWS ListOrders request to return a list of orders created or updated during a time frame.Important: The Chilkat v9.5.0.75 release accidentally breaks Amazon MWS (not AWS) authentication. If you need MWS with 9.5.0.75, send email to support@chilkatsoft.com for a hotfix, or revert back to v9.5.0.73, or update to a version after 9.5.0.75.
Chilkat Ruby Downloads
require 'chilkat'
success = false
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
rest = Chilkat::CkRest.new()
# ------------------------------------------------------------
# About using Chilkat with Amazon Marketplace SP-API
# ------------------------------------------------------------
# Connect to the Amazon MWS REST server.
#
# Make sure to connect to the correct Amazon MWS Endpoint, otherwise
# you'll get an HTTP 401 response code.
#
# The possible servers are:
#
# North America (NA) https://mws.amazonservices.com
# Europe (EU) https://mws-eu.amazonservices.com
# India (IN) https://mws.amazonservices.in
# China (CN) https://mws.amazonservices.com.cn
# Japan (JP) https://mws.amazonservices.jp
#
bTls = true
port = 443
bAutoReconnect = true
success = rest.Connect("mws.amazonservices.com",port,bTls,bAutoReconnect)
rest.put_Host("mws.amazonservices.com")
# Add query params
rest.AddQueryParam("Action","ListOrders")
rest.AddQueryParam("CreatedAfter","2016-12-31T23:00:00Z")
rest.AddQueryParam("MarketplaceId.Id.1","MWS_MARKETPLACE_ID")
rest.AddQueryParam("SellerId","MWS_SELLER_ID")
rest.AddQueryParam("AWSAccessKeyId","MWS_ACCESS_KEY_ID")
rest.AddQueryParam("SignatureVersion","2")
rest.AddQueryParam("SignatureMethod","HmacSHA256")
rest.AddQueryParam("Version","2013-09-01")
# Add the MWS Signature param. (Also adds the Timestamp parameter using the curent system date/time.)
rest.AddMwsSignature("POST","/Orders/2013-09-01","mws.amazonservices.com","MWS_SECRET_ACCESS_KEY_ID")
responseXml = rest.fullRequestFormUrlEncoded("POST","/Orders/2013-09-01")
if (rest.get_LastMethodSuccess() != true)
print rest.lastErrorText() + "\n";
exit
end
if (rest.get_ResponseStatusCode() != 200)
# Examine the request/response to see what happened.
print "response status code = " + rest.get_ResponseStatusCode().to_s() + "\n";
print "response status text = " + rest.responseStatusText() + "\n";
print "response header: " + rest.responseHeader() + "\n";
print "response body: " + responseXml + "\n";
print "---" + "\n";
print "LastRequestStartLine: " + rest.lastRequestStartLine() + "\n";
print "LastRequestHeader: " + rest.lastRequestHeader() + "\n";
end
# Examine the XML returned in the response body.
print responseXml + "\n";
print "----" + "\n";
print "Success." + "\n";