Chilkat Online Tools

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

Back to Collection Items

require 'chilkat'

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

http = Chilkat::CkHttp.new()

# 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": [
#       ]
#     }
#   }
# }

json = Chilkat::CkJsonObject.new()
json.UpdateString("entitlements.access.allow[0]","urn:elli:encompass:{{encompass_instance_id}}")
json.UpdateNewArray("entitlements.access.deny")

# Adds the "Authorization: Bearer {{partner_token}}" header.
http.put_AuthToken("{{partner_token}}")
http.SetRequestHeader("Content-Type","application/merge-patch+json")

sbRequestBody = Chilkat::CkStringBuilder.new()
json.EmitSb(sbRequestBody)

# resp is a CkHttpResponse
resp = http.PTextSb("PATCH","https://domain.com/",sbRequestBody,"utf-8","application/merge-patch+json",false,false)
if (http.get_LastMethodSuccess() == false)
    print http.lastErrorText() + "\n";
    exit
end

print resp.get_StatusCode().to_s() + "\n";
print resp.bodyStr() + "\n";

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": [
  ]
}