Sample code for 30+ languages & platforms
Delphi DLL 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 Delphi DLL Downloads

Delphi DLL
var
success: Boolean;
http: HCkHttp;
req: HCkHttpRequest;
resp: HCkHttpResponse;

begin
success := False;

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

http := CkHttp_Create();

//  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.
req := CkHttpRequest_Create();

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

//  Set the HTTP verb and path.
CkHttpRequest_putPath(req,'/Orders/2013-09-01');
CkHttpRequest_putHttpVerb(req,'POST');

//  Add the MWS Signature after the verb, path, and all params have been set.
CkHttpRequest_AddMwsSignature(req,'mws.amazonservices.com','MWS_SECRET_ACCESS_KEY_ID');

CkHttpRequest_putContentType(req,'application/x-www-form-urlencoded');

resp := CkHttpResponse_Create();
success := CkHttp_HttpReq(http,'https://mws.amazonservices.com/Orders/2013-09-01',req,resp);
if (success = False) then
  begin
    Memo1.Lines.Add(CkHttp__lastErrorText(http));
    Exit;
  end;

if (CkHttpResponse_getStatusCode(resp) <> 200) then
  begin
    Memo1.Lines.Add('Non-success status code: ' + IntToStr(CkHttpResponse_getStatusCode(resp)));
    Memo1.Lines.Add(CkHttpResponse__bodyStr(resp));
    Exit;
  end;

//  Examine the XML returned in the response body.
Memo1.Lines.Add(CkHttpResponse__bodyStr(resp));
Memo1.Lines.Add('----');
Memo1.Lines.Add('Success.');

CkHttp_Dispose(http);
CkHttpRequest_Dispose(req);
CkHttpResponse_Dispose(resp);