Back to Collection Items
IncludeFile "CkJsonObject.pb"
IncludeFile "CkStringBuilder.pb"
IncludeFile "CkHttp.pb"
IncludeFile "CkHttpResponse.pb"
Procedure ChilkatExample()
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
http.i = CkHttp::ckCreate()
If http.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success.i
; Use this online tool to generate code from sample JSON: Generate Code to Create JSON
; The following JSON is sent in the request body.
; {
; "data": [
; {
; "Owner": {
; "id": "{{user-id}}"
; },
; "Handler": {
; "id": "{{user-id}}"
; },
; "Vendor_Name": {
; "id": "{{vendor-id}}"
; },
; "Product_Category": "Software",
; "Qty_in_Demand": 1237.89,
; "Description": "Design your own layouts that align your business processes precisely. Assign them to profiles appropriately.",
; "Commission_Rate": 1237.67,
; "Product_Name": "Product_Name",
; "Quantity_In_Stock": 12792,
; "Sales_Start_Date": "2018-01-25",
; "Tax": [
; "Sales Tax"
; ],
; "Support_Start_Date": "2018-01-25",
; "Product_Active": true,
; "Usage_Unit": "Caton",
; "Product_Code": "Product_Code",
; "Qty_Ordered": 1237.89,
; "Manufacturer": "LexPon Inc.",
; "Qty_in_Stock": 1237.89,
; "Support_Expiry_Date": "2018-01-25",
; "Sales_End_Date": "2018-01-25",
; "Unit_Price": 1237.67,
; "Taxable": true,
; "Reorder_Level": 1237.89
; }
; ]
; }
json.i = CkJsonObject::ckCreate()
If json.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckUpdateString(json,"data[0].Owner.id","{{user-id}}")
CkJsonObject::ckUpdateString(json,"data[0].Handler.id","{{user-id}}")
CkJsonObject::ckUpdateString(json,"data[0].Vendor_Name.id","{{vendor-id}}")
CkJsonObject::ckUpdateString(json,"data[0].Product_Category","Software")
CkJsonObject::ckUpdateNumber(json,"data[0].Qty_in_Demand","1237.89")
CkJsonObject::ckUpdateString(json,"data[0].Description","Design your own layouts that align your business processes precisely. Assign them to profiles appropriately.")
CkJsonObject::ckUpdateNumber(json,"data[0].Commission_Rate","1237.67")
CkJsonObject::ckUpdateString(json,"data[0].Product_Name","Product_Name")
CkJsonObject::ckUpdateInt(json,"data[0].Quantity_In_Stock",12792)
CkJsonObject::ckUpdateString(json,"data[0].Sales_Start_Date","2018-01-25")
CkJsonObject::ckUpdateString(json,"data[0].Tax[0]","Sales Tax")
CkJsonObject::ckUpdateString(json,"data[0].Support_Start_Date","2018-01-25")
CkJsonObject::ckUpdateBool(json,"data[0].Product_Active",1)
CkJsonObject::ckUpdateString(json,"data[0].Usage_Unit","Caton")
CkJsonObject::ckUpdateString(json,"data[0].Product_Code","Product_Code")
CkJsonObject::ckUpdateNumber(json,"data[0].Qty_Ordered","1237.89")
CkJsonObject::ckUpdateString(json,"data[0].Manufacturer","LexPon Inc.")
CkJsonObject::ckUpdateNumber(json,"data[0].Qty_in_Stock","1237.89")
CkJsonObject::ckUpdateString(json,"data[0].Support_Expiry_Date","2018-01-25")
CkJsonObject::ckUpdateString(json,"data[0].Sales_End_Date","2018-01-25")
CkJsonObject::ckUpdateNumber(json,"data[0].Unit_Price","1237.67")
CkJsonObject::ckUpdateBool(json,"data[0].Taxable",1)
CkJsonObject::ckUpdateNumber(json,"data[0].Reorder_Level","1237.89")
CkHttp::ckSetRequestHeader(http,"Authorization","{{authorization-token}}")
CkHttp::ckSetRequestHeader(http,"Content-Type","application/json")
sbRequestBody.i = CkStringBuilder::ckCreate()
If sbRequestBody.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckEmitSb(json,sbRequestBody)
resp.i = CkHttp::ckPTextSb(http,"PUT","https://domain.com/crm/v2.1/Products/{{record-id}}",sbRequestBody,"utf-8","application/json",0,0)
If CkHttp::ckLastMethodSuccess(http) = 0
Debug CkHttp::ckLastErrorText(http)
CkHttp::ckDispose(http)
CkJsonObject::ckDispose(json)
CkStringBuilder::ckDispose(sbRequestBody)
ProcedureReturn
EndIf
Debug Str(CkHttpResponse::ckStatusCode(resp))
Debug CkHttpResponse::ckBodyStr(resp)
CkHttpResponse::ckDispose(resp)
CkHttp::ckDispose(http)
CkJsonObject::ckDispose(json)
CkStringBuilder::ckDispose(sbRequestBody)
ProcedureReturn
EndProcedure
Curl Command
curl -X PUT
-H "Authorization: Bearer <access_token>"
-H "Authorization: {{authorization-token}}"
-H "Content-Type: application/json"
-d '{
"data": [
{
"Owner": {
"id": "{{user-id}}"
},
"Handler": {
"id": "{{user-id}}"
},
"Vendor_Name": {
"id": "{{vendor-id}}"
},
"Product_Category": "Software",
"Qty_in_Demand": 1237.89,
"Description": "Design your own layouts that align your business processes precisely. Assign them to profiles appropriately.",
"Commission_Rate": 1237.67,
"Product_Name": "Product_Name",
"Quantity_In_Stock": 12792,
"Sales_Start_Date": "2018-01-25",
"Tax": [
"Sales Tax"
],
"Support_Start_Date": "2018-01-25",
"Product_Active": true,
"Usage_Unit": "Caton",
"Product_Code": "Product_Code",
"Qty_Ordered": 1237.89,
"Manufacturer": "LexPon Inc.",
"Qty_in_Stock": 1237.89,
"Support_Expiry_Date": "2018-01-25",
"Sales_End_Date": "2018-01-25",
"Unit_Price": 1237.67,
"Taxable": true,
"Reorder_Level": 1237.89
}
]
}'
https://domain.com/crm/v2.1/Products/{{record-id}}
Postman Collection Item JSON
{
"name": "Products",
"request": {
"method": "PUT",
"header": [
{
"key": "Authorization",
"value": "{{authorization-token}}"
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"data\": [\n {\n \"Owner\": {\n \"id\": \"{{user-id}}\"\n },\n \"Handler\": {\n \"id\": \"{{user-id}}\"\n },\n \"Vendor_Name\": {\n \"id\": \"{{vendor-id}}\"\n },\n \"Product_Category\": \"Software\",\n \"Qty_in_Demand\": 1237.89,\n \"Description\": \"Design your own layouts that align your business processes precisely. Assign them to profiles appropriately.\",\n \"Commission_Rate\": 1237.67,\n \"Product_Name\": \"Product_Name\",\n \"Quantity_In_Stock\": 12792,\n \"Sales_Start_Date\": \"2018-01-25\",\n \"Tax\": [\n \"Sales Tax\"\n ],\n \"Support_Start_Date\": \"2018-01-25\",\n \"Product_Active\": true,\n \"Usage_Unit\": \"Caton\",\n \"Product_Code\": \"Product_Code\",\n \"Qty_Ordered\": 1237.89,\n \"Manufacturer\": \"LexPon Inc.\",\n \"Qty_in_Stock\": 1237.89,\n \"Support_Expiry_Date\": \"2018-01-25\",\n \"Sales_End_Date\": \"2018-01-25\",\n \"Unit_Price\": 1237.67,\n \"Taxable\": true,\n \"Reorder_Level\": 1237.89\n }\n ]\n}"
},
"url": {
"raw": "{{api-domain}}/crm/v2.1/Products/{{record-id}}",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2.1",
"Products",
"{{record-id}}"
]
},
"description": "To update existing entities in the module."
},
"response": [
]
}