Sample code for 30+ languages & platforms
Visual FoxPro

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 Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loHttp
LOCAL loReq
LOCAL loResp

lnSuccess = 0

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

loHttp = 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.
loReq = CreateObject('Chilkat.HttpRequest')

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

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

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

loReq.ContentType = "application/x-www-form-urlencoded"

loResp = CreateObject('Chilkat.HttpResponse')
lnSuccess = loHttp.HttpReq("https://mws.amazonservices.com/Orders/2013-09-01",loReq,loResp)
IF (lnSuccess = 0) THEN
    ? loHttp.LastErrorText
    RELEASE loHttp
    RELEASE loReq
    RELEASE loResp
    CANCEL
ENDIF

IF (loResp.StatusCode <> 200) THEN
    ? "Non-success status code: " + STR(loResp.StatusCode)
    ? loResp.BodyStr
    RELEASE loHttp
    RELEASE loReq
    RELEASE loResp
    CANCEL
ENDIF

* Examine the XML returned in the response body.
? loResp.BodyStr
? "----"
? "Success."

RELEASE loHttp
RELEASE loReq
RELEASE loResp