Unicode C
Unicode C
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 Unicode C Downloads
#include <C_CkHttpW.h>
#include <C_CkHttpRequestW.h>
#include <C_CkHttpResponseW.h>
void ChilkatSample(void)
{
BOOL success;
HCkHttpW http;
HCkHttpRequestW req;
HCkHttpResponseW resp;
success = FALSE;
// This example assumes the Chilkat HTTP API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http = CkHttpW_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 = CkHttpRequestW_Create();
// Add query params
CkHttpRequestW_AddParam(req,L"Action",L"ListOrders");
CkHttpRequestW_AddParam(req,L"CreatedAfter",L"2016-12-31T23:00:00Z");
CkHttpRequestW_AddParam(req,L"MarketplaceId.Id.1",L"MWS_MARKETPLACE_ID");
CkHttpRequestW_AddParam(req,L"SellerId",L"MWS_SELLER_ID");
CkHttpRequestW_AddParam(req,L"AWSAccessKeyId",L"MWS_ACCESS_KEY_ID");
CkHttpRequestW_AddParam(req,L"SignatureVersion",L"2");
CkHttpRequestW_AddParam(req,L"SignatureMethod",L"HmacSHA256");
CkHttpRequestW_AddParam(req,L"Version",L"2013-09-01");
// Set the HTTP verb and path.
CkHttpRequestW_putPath(req,L"/Orders/2013-09-01");
CkHttpRequestW_putHttpVerb(req,L"POST");
// Add the MWS Signature after the verb, path, and all params have been set.
CkHttpRequestW_AddMwsSignature(req,L"mws.amazonservices.com",L"MWS_SECRET_ACCESS_KEY_ID");
CkHttpRequestW_putContentType(req,L"application/x-www-form-urlencoded");
resp = CkHttpResponseW_Create();
success = CkHttpW_HttpReq(http,L"https://mws.amazonservices.com/Orders/2013-09-01",req,resp);
if (success == FALSE) {
wprintf(L"%s\n",CkHttpW_lastErrorText(http));
CkHttpW_Dispose(http);
CkHttpRequestW_Dispose(req);
CkHttpResponseW_Dispose(resp);
return;
}
if (CkHttpResponseW_getStatusCode(resp) != 200) {
wprintf(L"Non-success status code: %d\n",CkHttpResponseW_getStatusCode(resp));
wprintf(L"%s\n",CkHttpResponseW_bodyStr(resp));
CkHttpW_Dispose(http);
CkHttpRequestW_Dispose(req);
CkHttpResponseW_Dispose(resp);
return;
}
// Examine the XML returned in the response body.
wprintf(L"%s\n",CkHttpResponseW_bodyStr(resp));
wprintf(L"----\n");
wprintf(L"Success.\n");
CkHttpW_Dispose(http);
CkHttpRequestW_Dispose(req);
CkHttpResponseW_Dispose(resp);
}