Sample code for 30+ languages & platforms
Xbase++ Requires Chilkat v11.0.0+

HTTPS MWS List Orders (Amazon Marketplace Web Service)

See more HTTP Misc Examples

Send an HTTPS MWS ListOrders request to return a list of orders created or updated during a time frame.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oHttp
LOCAL oReq
LOCAL oResp

nSuccess := 0

//  This example assumes the Chilkat HTTP API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

oHttp := CreateObject("Chilkat.Http")

//  Make sure to connect to the correct Amazon MWS Endpoing, 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 
//  

//  Build the HTTP request.
oReq := CreateObject("Chilkat.HttpRequest")

//  Add query params
oReq:AddParam("Action", "ListOrders")
oReq:AddParam("CreatedAfter", "2016-12-31T23:00:00Z")
oReq:AddParam("MarketplaceId.Id.1", "MWS_MARKETPLACE_ID")
oReq:AddParam("SellerId", "MWS_SELLER_ID")
oReq:AddParam("AWSAccessKeyId", "MWS_ACCESS_KEY_ID")
oReq:AddParam("SignatureVersion", "2")
oReq:AddParam("SignatureMethod", "HmacSHA256")
oReq:AddParam("Version", "2013-09-01")

//  Set the HTTP verb and path.
oReq:Path := "/Orders/2013-09-01"
oReq:HttpVerb := "POST"

//  Add the MWS Signature after the verb, path, and all params have been set.
oReq:AddMwsSignature("mws.amazonservices.com", "MWS_SECRET_ACCESS_KEY_ID")

oReq:ContentType := "application/x-www-form-urlencoded"

oResp := CreateObject("Chilkat.HttpResponse")
nSuccess := oHttp:HttpReq("https://mws.amazonservices.com/Orders/2013-09-01", oReq, oResp)
IF (nSuccess == 0)
    ? oHttp:LastErrorText
    oHttp:destroy()
    oReq:destroy()
    oResp:destroy()
    RETURN
ENDIF

IF (oResp:StatusCode != 200)
    ? "Non-success status code: " + Str(oResp:StatusCode)
    ? oResp:BodyStr
    oHttp:destroy()
    oReq:destroy()
    oResp:destroy()
    RETURN
ENDIF

//  Examine the XML returned in the response body.
? oResp:BodyStr
? "----"
? "Success."

oHttp:destroy()
oReq:destroy()
oResp:destroy()