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-site>
// <active>true</active>
// <addresses>
// <address>
// <id>5064</id>
// </address>
// </addresses>
// <buyer-hold>false</buyer-hold>
// <code>Supplier code13</code>
// <contacts>
// <contact>
// <id>3803</id>
// </contact>
// </contacts>
// <content-groups/>
// <cxml-domain nil="true"/>
// <cxml-http-username nil="true"/>
// <cxml-identity nil="true"/>
// <cxml-protocol nil="true"/>
// <cxml-secret nil="true"/>
// <cxml-ssl-version nil="true"/>
// <cxml-supplier-domain nil="true"/>
// <cxml-supplier-identity nil="true"/>
// <cxml-url nil="true"/>
// <default-locale>en</default-locale>
// <disable-cert-verify>false</disable-cert-verify>
// <name>Supplier load4 site name13</name>
// <po-change-method>prompt</po-change-method>
// <po-email nil="true"/>
// <po-method>prompt</po-method>
// </supplier-site>
//
xml = CkXmlW_Create();
CkXmlW_putTag(xml,L"supplier-site");
CkXmlW_UpdateChildContent(xml,L"active",L"true");
CkXmlW_UpdateChildContentInt(xml,L"addresses|address|id",5064);
CkXmlW_UpdateChildContent(xml,L"buyer-hold",L"false");
CkXmlW_UpdateChildContent(xml,L"code",L"Supplier code13");
CkXmlW_UpdateChildContentInt(xml,L"contacts|contact|id",3803);
CkXmlW_UpdateChildContent(xml,L"content-groups",L"");
CkXmlW_UpdateAttrAt(xml,L"cxml-domain",TRUE,L"nil",L"true");
CkXmlW_UpdateAttrAt(xml,L"cxml-http-username",TRUE,L"nil",L"true");
CkXmlW_UpdateAttrAt(xml,L"cxml-identity",TRUE,L"nil",L"true");
CkXmlW_UpdateAttrAt(xml,L"cxml-protocol",TRUE,L"nil",L"true");
CkXmlW_UpdateAttrAt(xml,L"cxml-secret",TRUE,L"nil",L"true");
CkXmlW_UpdateAttrAt(xml,L"cxml-ssl-version",TRUE,L"nil",L"true");
CkXmlW_UpdateAttrAt(xml,L"cxml-supplier-domain",TRUE,L"nil",L"true");
CkXmlW_UpdateAttrAt(xml,L"cxml-supplier-identity",TRUE,L"nil",L"true");
CkXmlW_UpdateAttrAt(xml,L"cxml-url",TRUE,L"nil",L"true");
CkXmlW_UpdateChildContent(xml,L"default-locale",L"en");
CkXmlW_UpdateChildContent(xml,L"disable-cert-verify",L"false");
CkXmlW_UpdateChildContent(xml,L"name",L"Supplier load4 site name13");
CkXmlW_UpdateChildContent(xml,L"po-change-method",L"prompt");
CkXmlW_UpdateAttrAt(xml,L"po-email",TRUE,L"nil",L"true");
CkXmlW_UpdateChildContent(xml,L"po-method",L"prompt");
// 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"POST",L"[\"id\",\"supplier_id\",\"kind\",\"name_given\",\"name_family\",\"email\"]}]",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 POST
-H "Authorization: Bearer <access_token>"
-d '<supplier-site>
<active>true</active>
<addresses>
<address>
<id>5064</id>
</address>
</addresses>
<buyer-hold>false</buyer-hold>
<code>Supplier code13</code>
<contacts>
<contact>
<id>3803</id>
</contact>
</contacts>
<content-groups/>
<cxml-domain nil="true"/>
<cxml-http-username nil="true"/>
<cxml-identity nil="true"/>
<cxml-protocol nil="true"/>
<cxml-secret nil="true"/>
<cxml-ssl-version nil="true"/>
<cxml-supplier-domain nil="true"/>
<cxml-supplier-identity nil="true"/>
<cxml-url nil="true"/>
<default-locale>en</default-locale>
<disable-cert-verify>false</disable-cert-verify>
<name>Supplier load4 site name13</name>
<po-change-method>prompt</po-change-method>
<po-email nil="true"/>
<po-method>prompt</po-method>
</supplier-site>'
https://domain.com/suppliers/:id/supplier_sites?fields=["id","name","code","supplier_id",{"addresses": ["id","supplier_id","kind","location_code","address_name","street_address","street_address2","city","postal_code","state",{"country": ["id","code","name"]},{"custom_fields": {}}]},{"contacts": ["id","supplier_id","kind","name_given","name_family","email"]}]
Postman Collection Item JSON
{
"name": "Create Supplier Site",
"request": {
"method": "POST",
"header": [
],
"body": {
"mode": "raw",
"raw": "<supplier-site>\n <active>true</active>\n <addresses>\n <address>\n <id>5064</id>\n </address>\n </addresses>\n <buyer-hold>false</buyer-hold>\n <code>Supplier code13</code>\n <contacts>\n <contact>\n <id>3803</id>\n </contact>\n </contacts>\n <content-groups/>\n <cxml-domain nil=\"true\"/>\n <cxml-http-username nil=\"true\"/>\n <cxml-identity nil=\"true\"/>\n <cxml-protocol nil=\"true\"/>\n <cxml-secret nil=\"true\"/>\n <cxml-ssl-version nil=\"true\"/>\n <cxml-supplier-domain nil=\"true\"/>\n <cxml-supplier-identity nil=\"true\"/>\n <cxml-url nil=\"true\"/>\n <default-locale>en</default-locale>\n <disable-cert-verify>false</disable-cert-verify>\n <name>Supplier load4 site name13</name>\n <po-change-method>prompt</po-change-method>\n <po-email nil=\"true\"/>\n <po-method>prompt</po-method>\n</supplier-site>",
"options": {
"raw": {
"language": "xml"
}
}
},
"url": {
"raw": "{{URL}}/suppliers/:id/supplier_sites?fields=[\"id\",\"name\",\"code\",\"supplier_id\",{\"addresses\": [\"id\",\"supplier_id\",\"kind\",\"location_code\",\"address_name\",\"street_address\",\"street_address2\",\"city\",\"postal_code\",\"state\",{\"country\": [\"id\",\"code\",\"name\"]},{\"custom_fields\": {}}]},{\"contacts\": [\"id\",\"supplier_id\",\"kind\",\"name_given\",\"name_family\",\"email\"]}]",
"host": [
"{{URL}}"
],
"path": [
"suppliers",
":id",
"supplier_sites"
],
"query": [
{
"key": "fields",
"value": "[\"id\",\"name\",\"code\",\"supplier_id\",{\"addresses\": [\"id\",\"supplier_id\",\"kind\",\"location_code\",\"address_name\",\"street_address\",\"street_address2\",\"city\",\"postal_code\",\"state\",{\"country\": [\"id\",\"code\",\"name\"]},{\"custom_fields\": {}}]},{\"contacts\": [\"id\",\"supplier_id\",\"kind\",\"name_given\",\"name_family\",\"email\"]}]"
}
],
"variable": [
{
"key": "id",
"value": "3505"
}
]
}
},
"response": [
]
}