curl --request PATCH \
--url https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId} \
--header 'Content-Type: application/json-patch+json' \
--data '
[
{
"path": "<string>",
"value": "<unknown>"
}
]
'import requests
url = "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId}"
payload = [
{
"path": "<string>",
"value": "<unknown>"
}
]
headers = {"Content-Type": "application/json-patch+json"}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'Content-Type': 'application/json-patch+json'},
body: JSON.stringify([{path: '<string>', value: '<unknown>'}])
};
fetch('https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
[
'path' => '<string>',
'value' => '<unknown>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json-patch+json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId}"
payload := strings.NewReader("[\n {\n \"path\": \"<string>\",\n \"value\": \"<unknown>\"\n }\n]")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Content-Type", "application/json-patch+json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId}")
.header("Content-Type", "application/json-patch+json")
.body("[\n {\n \"path\": \"<string>\",\n \"value\": \"<unknown>\"\n }\n]")
.asString();require 'uri'
require 'net/http'
url = URI("https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Content-Type"] = 'application/json-patch+json'
request.body = "[\n {\n \"path\": \"<string>\",\n \"value\": \"<unknown>\"\n }\n]"
response = http.request(request)
puts response.read_body{
"status": "success",
"code": "<string>",
"data": {
"id": 123,
"name": "<string>",
"customId": "<string>",
"description": "<string>",
"brand": {
"id": 123,
"name": "<string>"
},
"organization": {
"id": 123,
"name": "<string>"
},
"supplier": {
"id": 123,
"name": "<string>"
},
"companyContactPerson": {
"id": "<string>",
"name": "<string>"
},
"supplierContactPerson": {
"id": "<string>",
"name": "<string>"
},
"adminUnit": {
"id": 123,
"name": "<string>",
"properties": [
"<string>"
]
},
"logo": {
"id": "<string>",
"url": "<string>"
},
"lastUpdated": "2023-11-07T05:31:56Z",
"deadline": "2023-11-07T05:31:56Z",
"etd": "2023-11-07T05:31:56Z",
"erpItemId": "<string>",
"defaultQty": 123,
"nameGeneratorExtraText": "<string>",
"physicalReferenceNumber": "<string>",
"categories": [
{
"id": 123,
"name": "<string>",
"state": "active",
"usedInItems": 123,
"beginDate": "2023-11-07T05:31:56Z",
"endDate": "2023-11-07T05:31:56Z",
"properties": [
"<string>"
]
}
],
"customFields": [
{
"id": 123,
"customId1": "<string>",
"type": "<string>",
"name": "<string>",
"value": {
"id": 123,
"value": "<string>",
"customId": "<string>"
},
"values": [
{
"id": 123,
"value": "<string>",
"customId": "<string>"
}
],
"perColorValues": [
{
"styleColorId": 123,
"value": {
"id": 123,
"value": "<string>",
"customId": "<string>"
},
"values": [
{
"id": 123,
"value": "<string>",
"customId": "<string>"
}
]
}
]
}
],
"properties": [
"<string>"
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}Partially updates a single item by ID (RFC 6902 JSON Patch).
Applies a JSON Patch document (RFC 6902) to an item owned by the current organization. PATCH is a partial update: a field an operation touches is written, an omitted field is preserved (preserve-on-omit). A ‘replace’ to null on a nullable scalar (customId, description, nameGeneratorExtraText) clears that column; supply a non-null value or omit the field to preserve it. Collections (categories, customFields) follow RFC 6902 replace-set semantics when touched: the resulting array is the full desired set — ‘replace /categories []’ clears all associations, ‘replace /categories [x]’ makes x the sole association — while an omitted collection preserves all existing associations. The route id is authoritative: a ‘replace /id’ to a different value returns 409, and one restating the route id is a no-op. Required fields (name, brand, companyContactPerson) cannot be cleared and defaultQty must stay non-null and >= 0 — violating this returns 400. Supplier users may only patch /description and /customFields; every custom field in the resulting customFields set must be supplier-editable or the request returns 403, and touching any other field also returns 403. Touching /readyForExport (possible false->true flip) or /customFields triggers the mandatory-custom-field check (DL-58912). A failed ‘test’ operation returns 409; any other operation that cannot be applied to the resource returns 422. Cross-organization access returns 403 (an authenticated-but-not-authorized denial), matching GET.
curl --request PATCH \
--url https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId} \
--header 'Content-Type: application/json-patch+json' \
--data '
[
{
"path": "<string>",
"value": "<unknown>"
}
]
'import requests
url = "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId}"
payload = [
{
"path": "<string>",
"value": "<unknown>"
}
]
headers = {"Content-Type": "application/json-patch+json"}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'Content-Type': 'application/json-patch+json'},
body: JSON.stringify([{path: '<string>', value: '<unknown>'}])
};
fetch('https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
[
'path' => '<string>',
'value' => '<unknown>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json-patch+json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId}"
payload := strings.NewReader("[\n {\n \"path\": \"<string>\",\n \"value\": \"<unknown>\"\n }\n]")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Content-Type", "application/json-patch+json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId}")
.header("Content-Type", "application/json-patch+json")
.body("[\n {\n \"path\": \"<string>\",\n \"value\": \"<unknown>\"\n }\n]")
.asString();require 'uri'
require 'net/http'
url = URI("https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/items/{itemId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Content-Type"] = 'application/json-patch+json'
request.body = "[\n {\n \"path\": \"<string>\",\n \"value\": \"<unknown>\"\n }\n]"
response = http.request(request)
puts response.read_body{
"status": "success",
"code": "<string>",
"data": {
"id": 123,
"name": "<string>",
"customId": "<string>",
"description": "<string>",
"brand": {
"id": 123,
"name": "<string>"
},
"organization": {
"id": 123,
"name": "<string>"
},
"supplier": {
"id": 123,
"name": "<string>"
},
"companyContactPerson": {
"id": "<string>",
"name": "<string>"
},
"supplierContactPerson": {
"id": "<string>",
"name": "<string>"
},
"adminUnit": {
"id": 123,
"name": "<string>",
"properties": [
"<string>"
]
},
"logo": {
"id": "<string>",
"url": "<string>"
},
"lastUpdated": "2023-11-07T05:31:56Z",
"deadline": "2023-11-07T05:31:56Z",
"etd": "2023-11-07T05:31:56Z",
"erpItemId": "<string>",
"defaultQty": 123,
"nameGeneratorExtraText": "<string>",
"physicalReferenceNumber": "<string>",
"categories": [
{
"id": 123,
"name": "<string>",
"state": "active",
"usedInItems": 123,
"beginDate": "2023-11-07T05:31:56Z",
"endDate": "2023-11-07T05:31:56Z",
"properties": [
"<string>"
]
}
],
"customFields": [
{
"id": 123,
"customId1": "<string>",
"type": "<string>",
"name": "<string>",
"value": {
"id": 123,
"value": "<string>",
"customId": "<string>"
},
"values": [
{
"id": 123,
"value": "<string>",
"customId": "<string>"
}
],
"perColorValues": [
{
"styleColorId": 123,
"value": {
"id": 123,
"value": "<string>",
"customId": "<string>"
},
"values": [
{
"id": 123,
"value": "<string>",
"customId": "<string>"
}
]
}
]
}
],
"properties": [
"<string>"
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}Headers
Path Parameters
Unique identifier of the item to partially update. The route id is authoritative.
Body
Response
OK
The coarse outcome of the request, indicating whether it succeeded or failed.
success, error The specific machine-readable outcome code, such as ok on success or the most specific error code on failure. Always lowercase on the wire.
The response payload, either a single object for a by-id read or an array for a bulk operation. Omitted from the body when there is no value.
Show child attributes
Show child attributes