Back to Collection Items
LOCAL loHttp
LOCAL lnSuccess
LOCAL loXml
LOCAL loSbRequestBody
LOCAL loResp
* This example assumes the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Http')
loHttp = CreateObject('Chilkat.Http')
* 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"?>
* <order-header-change>
* <custom-fields>
* <budget-status>OK</budget-status>
* <budget-info>Budget Approved</budget-info>
* </custom-fields>
* <approver>
* <name>BudgetCheckPOChange</name>
* </approver>
* </order-header-change>
*
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Xml')
loXml = CreateObject('Chilkat.Xml')
loXml.Tag = "order-header-change"
loXml.UpdateChildContent("custom-fields|budget-status","OK")
loXml.UpdateChildContent("custom-fields|budget-info","Budget Approved")
loXml.UpdateChildContent("approver|name","BudgetCheckPOChange")
* Adds the "Authorization: Bearer <access_token>" header.
loHttp.AuthToken = "<access_token>"
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.StringBuilder')
loSbRequestBody = CreateObject('Chilkat.StringBuilder')
loXml.GetXmlSb(loSbRequestBody)
loResp = loHttp.PTextSb("PUT",'https://domain.com/purchase_order_changes/44?fields=["id"]',loSbRequestBody,"utf-8","application/xml",0,0)
IF (loHttp.LastMethodSuccess = 0) THEN
? loHttp.LastErrorText
RELEASE loHttp
RELEASE loXml
RELEASE loSbRequestBody
CANCEL
ENDIF
? STR(loResp.StatusCode)
? loResp.BodyStr
RELEASE loResp
RELEASE loHttp
RELEASE loXml
RELEASE loSbRequestBody
Curl Command
curl -X PUT
-H "Authorization: Bearer <access_token>"
-d '<?xml version="1.0" encoding="UTF-8"?>
<order-header-change>
<custom-fields>
<budget-status>OK</budget-status>
<budget-info>Budget Approved</budget-info>
</custom-fields>
<approver>
<name>BudgetCheckPOChange</name>
</approver>
</order-header-change>'
https://domain.com/purchase_order_changes/44?fields=["id"]
Postman Collection Item JSON
{
"name": "Update purchase order change (remote approver)",
"request": {
"method": "PUT",
"header": [
],
"body": {
"mode": "raw",
"raw": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<order-header-change>\n <custom-fields>\n <budget-status>OK</budget-status>\n <budget-info>Budget Approved</budget-info>\n </custom-fields>\n <approver>\n <name>BudgetCheckPOChange</name>\n </approver>\n</order-header-change>"
},
"url": {
"raw": "{{URL}}/purchase_order_changes/44?fields=[\"id\"]",
"host": [
"{{URL}}"
],
"path": [
"purchase_order_changes",
"44"
],
"query": [
{
"key": "fields",
"value": "[\"id\"]"
}
]
}
},
"response": [
]
}