Back to Collection Items
#include <C_CkHttpW.h>
#include <C_CkXmlW.h>
#include <C_CkStringBuilderW.h>
#include <C_CkHttpResponseW.h>
void ChilkatSample(void)
{
HCkHttpW http;
BOOL success;
HCkXmlW xml;
HCkStringBuilderW sbRequestBody;
HCkHttpResponseW resp;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http = CkHttpW_Create();
// Use this online tool to generate code from sample XML: Generate Code to Create XML
// The following XML is sent in the request body.
// <?xml version="1.0" encoding="utf-8"?>
// <supplier>
// <id>1</id>
// <preferred-commodities type="array">
// <preferred-commodity>
// <name>IT</name>
// </preferred-commodity>
// </preferred-commodities>
// </supplier>
//
xml = CkXmlW_Create();
CkXmlW_putTag(xml,L"supplier");
CkXmlW_UpdateChildContentInt(xml,L"id",1);
CkXmlW_UpdateAttrAt(xml,L"preferred-commodities",TRUE,L"type",L"array");
CkXmlW_UpdateChildContent(xml,L"preferred-commodities|preferred-commodity|name",L"IT");
// Adds the "Authorization: Bearer <access_token>" header.
CkHttpW_putAuthToken(http,L"<access_token>");
sbRequestBody = CkStringBuilderW_Create();
CkXmlW_GetXmlSb(xml,sbRequestBody);
resp = CkHttpW_PTextSb(http,L"PUT",L"[\"id\",\"name\"]}]",sbRequestBody,L"utf-8",L"application/xml",FALSE,FALSE);
if (CkHttpW_getLastMethodSuccess(http) == FALSE) {
wprintf(L"%s\n",CkHttpW_lastErrorText(http));
CkHttpW_Dispose(http);
CkXmlW_Dispose(xml);
CkStringBuilderW_Dispose(sbRequestBody);
return;
}
wprintf(L"%d\n",CkHttpResponseW_getStatusCode(resp));
wprintf(L"%s\n",CkHttpResponseW_bodyStr(resp));
CkHttpResponseW_Dispose(resp);
CkHttpW_Dispose(http);
CkXmlW_Dispose(xml);
CkStringBuilderW_Dispose(sbRequestBody);
}
Curl Command
curl -X PUT
-H "Authorization: Bearer <access_token>"
-d '<supplier>
<id>1</id>
<preferred-commodities type="array">
<preferred-commodity>
<name>IT</name>
</preferred-commodity>
</preferred-commodities>
</supplier>'
https://domain.com/suppliers/:id?fields=["id","number","status",{"preferred_commodities": ["id","name"]}]
Postman Collection Item JSON
{
"name": "Add Preferred Commodities",
"request": {
"method": "PUT",
"header": [
],
"body": {
"mode": "raw",
"raw": "<supplier>\n <id>1</id>\n <preferred-commodities type=\"array\">\n <preferred-commodity>\n <name>IT</name>\n </preferred-commodity>\n </preferred-commodities>\n</supplier>"
},
"url": {
"raw": "{{URL}}/suppliers/:id?fields=[\"id\",\"number\",\"status\",{\"preferred_commodities\": [\"id\",\"name\"]}]",
"host": [
"{{URL}}"
],
"path": [
"suppliers",
":id"
],
"query": [
{
"key": "fields",
"value": "[\"id\",\"number\",\"status\",{\"preferred_commodities\": [\"id\",\"name\"]}]"
}
],
"variable": [
{
"key": "id",
"value": "3505"
}
]
}
},
"response": [
]
}