curl --request PUT \
--url https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId} \
--header 'Content-Type: application/json' \
--data '
{
"designerComment": "<string>",
"lines": [
{
"lineId": 123,
"companyMeasurement": 123,
"newMeasurement": 123
}
]
}
'import requests
url = "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId}"
payload = {
"designerComment": "<string>",
"lines": [
{
"lineId": 123,
"companyMeasurement": 123,
"newMeasurement": 123
}
]
}
headers = {"Content-Type": "application/json"}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
designerComment: '<string>',
lines: [{lineId: 123, companyMeasurement: 123, newMeasurement: 123}]
})
};
fetch('https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId}', 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/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'designerComment' => '<string>',
'lines' => [
[
'lineId' => 123,
'companyMeasurement' => 123,
'newMeasurement' => 123
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/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/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId}"
payload := strings.NewReader("{\n \"designerComment\": \"<string>\",\n \"lines\": [\n {\n \"lineId\": 123,\n \"companyMeasurement\": 123,\n \"newMeasurement\": 123\n }\n ]\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId}")
.header("Content-Type", "application/json")
.body("{\n \"designerComment\": \"<string>\",\n \"lines\": [\n {\n \"lineId\": 123,\n \"companyMeasurement\": 123,\n \"newMeasurement\": 123\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"designerComment\": \"<string>\",\n \"lines\": [\n {\n \"lineId\": 123,\n \"companyMeasurement\": 123,\n \"newMeasurement\": 123\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"code": "<string>",
"data": {
"sizeRangeSizeId": 123,
"sizeRangeSizeName": "<string>",
"unit": "<string>",
"designerComment": "<string>",
"properties": [
"<string>"
],
"lines": [
{
"lineId": 123,
"name": "<string>",
"requestedMeasurement": 123,
"companyMeasurement": 123,
"supplierMeasurement": 123,
"newMeasurement": 123,
"tolerance": 123
}
]
}
}{
"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>"
}
]
}
}Replace the measured values for one requested size of a sample request
Full-replace write of one requested size’s own measured values, addressed by sizeRangeSizeId in the route. The body is a single object carrying that size’s lines addressed by lineId, and optionally the designer’s per-size fit comment. It carries no sizeRangeSizeId of its own — the route is authoritative, so sending one in the body is a 400. Only companyMeasurement (the designer’s measured actual), newMeasurement (the wanted value), and designerComment are writable; a null clears the value. As a full replace, designerComment is written verbatim, so seed it back from the read to preserve it. The read-only fields of the read contract — requestedMeasurement, supplierMeasurement, tolerance and name — are not accepted. As a full replace the body must cover every active line of the addressed size exactly once; a deactivated line, which has no lineId, cannot be written. Other sizes are untouched. A line not on the size, incomplete coverage, or a request in the Commented state returns 422; a size that is not a requested size on the request returns 404. A changed newMeasurement is also written back to the matching line of the style’s master measurement chart, and that line is re-graded; a re-grade that would leave the chart line invalid returns 422. The write is not checked against the client’s earlier read, so a change made since that read is overwritten; 409 is returned only when another write changes the size’s measured values or designer comment while this write is in progress. Re-read and retry. The write records the changed values and comment in the sample request’s measurement change history in the audit log. It does not change the sample request’s status or dates and emits no notification. A failed write commits nothing.
curl --request PUT \
--url https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId} \
--header 'Content-Type: application/json' \
--data '
{
"designerComment": "<string>",
"lines": [
{
"lineId": 123,
"companyMeasurement": 123,
"newMeasurement": 123
}
]
}
'import requests
url = "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId}"
payload = {
"designerComment": "<string>",
"lines": [
{
"lineId": 123,
"companyMeasurement": 123,
"newMeasurement": 123
}
]
}
headers = {"Content-Type": "application/json"}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
designerComment: '<string>',
lines: [{lineId: 123, companyMeasurement: 123, newMeasurement: 123}]
})
};
fetch('https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId}', 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/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'designerComment' => '<string>',
'lines' => [
[
'lineId' => 123,
'companyMeasurement' => 123,
'newMeasurement' => 123
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/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/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId}"
payload := strings.NewReader("{\n \"designerComment\": \"<string>\",\n \"lines\": [\n {\n \"lineId\": 123,\n \"companyMeasurement\": 123,\n \"newMeasurement\": 123\n }\n ]\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId}")
.header("Content-Type", "application/json")
.body("{\n \"designerComment\": \"<string>\",\n \"lines\": [\n {\n \"lineId\": 123,\n \"companyMeasurement\": 123,\n \"newMeasurement\": 123\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/styles/{styleId}/sample-requests/{sampleRequestId}/measurements/{sizeRangeSizeId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"designerComment\": \"<string>\",\n \"lines\": [\n {\n \"lineId\": 123,\n \"companyMeasurement\": 123,\n \"newMeasurement\": 123\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"code": "<string>",
"data": {
"sizeRangeSizeId": 123,
"sizeRangeSizeName": "<string>",
"unit": "<string>",
"designerComment": "<string>",
"properties": [
"<string>"
],
"lines": [
{
"lineId": 123,
"name": "<string>",
"requestedMeasurement": 123,
"companyMeasurement": 123,
"supplierMeasurement": 123,
"newMeasurement": 123,
"tolerance": 123
}
]
}
}{
"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
Identifier of the style the sample request belongs to.
Identifier of the sample request the size belongs to.
Identifier of the requested size whose measured values are replaced.
Body
The designer's fit comment for this size, text only. Written verbatim on a full replace, so seed it back from the read to preserve it. Null or empty clears it.
The writable measured values for each active line of this size. Must cover every active line of the size exactly once.
Show child attributes
Show child attributes
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