Chilkat Online Tools

VB6 / EPC 2.0 - Partner Sandbox - 19.4 November [External] / [Partner] Update a Product

Back to Collection Items

' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.

Dim http As New ChilkatHttp
Dim success As Long

' Use this online tool to generate code from sample JSON: Generate Code to Create JSON

' The following JSON is sent in the request body.

' {
'   "entitlements": {
'     "access": {
'       "allow": [
'         "urn:elli:encompass:{{encompass_instance_id}}"
'       ],
'       "deny": [
'       ]
'     }
'   }
' }

Dim json As New ChilkatJsonObject
success = json.UpdateString("entitlements.access.allow[0]","urn:elli:encompass:{{encompass_instance_id}}")
success = json.UpdateNewArray("entitlements.access.deny")

' Adds the "Authorization: Bearer {{partner_token}}" header.
http.AuthToken = "{{partner_token}}"
http.SetRequestHeader "Content-Type","application/merge-patch+json"

Dim sbRequestBody As New ChilkatStringBuilder
success = json.EmitSb(sbRequestBody)

Dim resp As ChilkatHttpResponse
Set resp = http.PTextSb("PATCH","https://domain.com/",sbRequestBody,"utf-8","application/merge-patch+json",0,0)
If (http.LastMethodSuccess = 0) Then
    Debug.Print http.LastErrorText
    Exit Sub
End If

Debug.Print resp.StatusCode
Debug.Print resp.BodyStr

Curl Command

curl -X PATCH
	-H "Authorization: Bearer {{partner_token}}"
	-H "Content-Type: application/merge-patch+json"
	-d '{
    "entitlements": {
        "access": {
            "allow": [
                "urn:elli:encompass:{{encompass_instance_id}}"
            ],
            "deny": []
        }
    }
}'
https://domain.com/

Postman Collection Item JSON

{
  "name": "[Partner] Update a Product",
  "_postman_id": "68a5c2d0-73d6-4976-967f-008cb3ea3361",
  "request": {
    "method": "PATCH",
    "header": [
      {
        "key": "Authorization",
        "value": "Bearer {{partner_token}}",
        "type": "text"
      },
      {
        "key": "Content-Type",
        "name": "Content-Type",
        "value": "application/merge-patch+json",
        "type": "text"
      }
    ],
    "body": {
      "mode": "raw",
      "raw": "{\n    \"entitlements\": {\n        \"access\": {\n            \"allow\": [\n                \"urn:elli:encompass:{{encompass_instance_id}}\"\n            ],\n            \"deny\": []\n        }\n    }\n}\n"
    },
    "url": "{{api_host}}/partner/v2/products/{{product_id}}"
  },
  "response": [
  ]
}