Back to Collection Items
var
http: TChilkatHttp;
success: Integer;
xml: TChilkatXml;
sbRequestBody: TChilkatStringBuilder;
resp: IChilkatHttpResponse;
begin
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http := TChilkatHttp.Create(Self);
// 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 := TChilkatXml.Create(Self);
xml.Tag := 'supplier';
xml.UpdateChildContentInt('id',1);
xml.UpdateAttrAt('preferred-commodities',1,'type','array');
xml.UpdateChildContent('preferred-commodities|preferred-commodity|name','IT');
// Adds the "Authorization: Bearer <access_token>" header.
http.AuthToken := '<access_token>';
sbRequestBody := TChilkatStringBuilder.Create(Self);
xml.GetXmlSb(sbRequestBody.ControlInterface);
resp := http.PTextSb('PUT','["id","name"]}]',sbRequestBody.ControlInterface,'utf-8','application/xml',0,0);
if (http.LastMethodSuccess = 0) then
begin
Memo1.Lines.Add(http.LastErrorText);
Exit;
end;
Memo1.Lines.Add(IntToStr(resp.StatusCode));
Memo1.Lines.Add(resp.BodyStr);
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": [
]
}