You can modify or update a placement in your container by making a PATCH request to the Offer Library API.
For more information on JSON Patch, including available operations, see the official JSON Patch documentation.
The following table shows the valid values which comprise the Content-Type and Accept fields in the request header:
Header name | Value |
---|---|
Accept | application/vnd.adobe.platform.xcore.xdm.receipt+json; version=1 |
Content-Type | application/vnd.adobe.platform.xcore.patch.hal+json; version=1; schema="https://ns.adobe.com/experience/offer-management/offer-placement;version=0.4" |
API format
PATCH /{ENDPOINT_PATH}/{CONTAINER_ID}/instances/{INSTANCE_ID}
Parameter | Description | Example |
---|---|---|
{ENDPOINT_PATH} |
The endpoint path for repository APIs. | https://platform.adobe.io/data/core/xcore/ |
{CONTAINER_ID} |
The container where the placements are located. | e0bd8463-0913-4ca1-bd84-6309134ca1f6 |
{INSTANCE_ID} |
The instance id of the placement you wish to update. | 9aa58fd0-13d7-11eb-928b-576735ea4db8 |
Request
curl -X PATCH \
'https://platform.adobe.io/data/core/xcore/e0bd8463-0913-4ca1-bd84-6309134ca1f6/instances/9aa58fd0-13d7-11eb-928b-576735ea4db8' \
-H 'Accept: application/vnd.adobe.platform.xcore.xdm.receipt+json; version=1' \
-H 'Content-Type: application/vnd.adobe.platform.xcore.patch.hal+json; version=1; schema="https://ns.adobe.com/experience/offer-management/offer-placement;version=0.4"' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '[
{
"op": "replace",
"path": "/_instance/xdm:name",
"value": "Sales and Promotions Placement"
},
{
"op": "replace",
"path": "/_instance/xdm:description",
"value": "A test placement to contain offers of sales and discounts"
}
]'
Parameter | Description |
---|---|
op |
The operation call used to define the action needed to update the connection. Operations include: add , replace , and remove . |
path |
The path of the parameter to be updated. |
value |
The new value you want to update your parameter with. |
Response
A successful response returns the updated details of the placement, including its unique instance ID and placement @id
.
{
"instanceId": "9aa58fd0-13d7-11eb-928b-576735ea4db8",
"@id": "xcore:offer-placement:124e0be5699743d3",
"repo:etag": 2,
"repo:createdDate": "2023-10-21T19:57:09.837456Z",
"repo:lastModifiedDate": "2023-10-21T19:59:10.700149Z",
"repo:createdBy": "{CREATED_BY}",
"repo:lastModifiedBy": "{MODIFIED_BY}",
"repo:createdByClientId": "{CREATED_CLIENT_ID}",
"repo:lastModifiedByClientId": "{MODIFIED_CLIENT_ID}"
}