Edit the delivery dates of several Sales Order Lines
curl --request PATCH \
--url https://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"lineReferences": [
"<string>"
],
"updateRequestedDeliveryAt": true,
"requestedDeliveryAt": "2023-11-07T05:31:56Z",
"updateCommittedDeliveryAt": true,
"committedDeliveryAt": "2023-11-07T05:31:56Z",
"dueAt": "2023-11-07T05:31:56Z"
}
'import requests
url = "https://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates"
payload = {
"lineReferences": ["<string>"],
"updateRequestedDeliveryAt": True,
"requestedDeliveryAt": "2023-11-07T05:31:56Z",
"updateCommittedDeliveryAt": True,
"committedDeliveryAt": "2023-11-07T05:31:56Z",
"dueAt": "2023-11-07T05:31:56Z"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
lineReferences: ['<string>'],
updateRequestedDeliveryAt: true,
requestedDeliveryAt: '2023-11-07T05:31:56Z',
updateCommittedDeliveryAt: true,
committedDeliveryAt: '2023-11-07T05:31:56Z',
dueAt: '2023-11-07T05:31:56Z'
})
};
fetch('https://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates', 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://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates",
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([
'lineReferences' => [
'<string>'
],
'updateRequestedDeliveryAt' => true,
'requestedDeliveryAt' => '2023-11-07T05:31:56Z',
'updateCommittedDeliveryAt' => true,
'committedDeliveryAt' => '2023-11-07T05:31:56Z',
'dueAt' => '2023-11-07T05:31:56Z'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates"
payload := strings.NewReader("{\n \"lineReferences\": [\n \"<string>\"\n ],\n \"updateRequestedDeliveryAt\": true,\n \"requestedDeliveryAt\": \"2023-11-07T05:31:56Z\",\n \"updateCommittedDeliveryAt\": true,\n \"committedDeliveryAt\": \"2023-11-07T05:31:56Z\",\n \"dueAt\": \"2023-11-07T05:31:56Z\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.patch("https://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"lineReferences\": [\n \"<string>\"\n ],\n \"updateRequestedDeliveryAt\": true,\n \"requestedDeliveryAt\": \"2023-11-07T05:31:56Z\",\n \"updateCommittedDeliveryAt\": true,\n \"committedDeliveryAt\": \"2023-11-07T05:31:56Z\",\n \"dueAt\": \"2023-11-07T05:31:56Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"lineReferences\": [\n \"<string>\"\n ],\n \"updateRequestedDeliveryAt\": true,\n \"requestedDeliveryAt\": \"2023-11-07T05:31:56Z\",\n \"updateCommittedDeliveryAt\": true,\n \"committedDeliveryAt\": \"2023-11-07T05:31:56Z\",\n \"dueAt\": \"2023-11-07T05:31:56Z\"\n}"
response = http.request(request)
puts response.read_body{
"type": "https://api.bold-factory.com/errors/COMMON.QUERY.FILTER_PARSING_FAILED",
"title": "Filter parsing failed",
"status": 400,
"detail": "The filter string could not be parsed or contains invalid column references: CreatedBy column does not exist.",
"instance": "POST /v1/items/families/search",
"code": "COMMON.QUERY.FILTER_PARSING_FAILED"
}{
"type": "https://www.rfc-editor.org/rfc/rfc9110.html#name-401-unauthorized",
"title": "Unauthorized",
"status": 401,
"detail": "You are not authenticated.",
"instance": "GET /v1/items/skus"
}{
"type": "https://api.bold-factory.com/errors/COMMON.AUTH.MISSING_PERMISSIONS",
"title": "Missing permissions",
"status": 403,
"detail": "Missing permissions: Items.Families.Read",
"instance": "GET /v1/maintenance/assets",
"code": "COMMON.AUTH.MISSING_PERMISSIONS"
}{
"type": "https://api.bold-factory.com/errors/COMMON.ENTITY.NOT_FOUND",
"title": "The entity was not found.",
"status": 404,
"detail": "Entity Family (pr_72f13bd8218h9823dfj9) was not found.",
"instance": "DELETE /v1/items/families/pr_72f13bd8218h9823dfj9",
"code": "COMMON.ENTITY.NOT_FOUND"
}{
"type": "https://api.bold-factory.com/errors/COMMON.RATE_LIMIT.EXCEEDED",
"title": "Rate limit exceeded",
"status": 429,
"detail": "The request rate limit for this tenant has been exceeded. Retry after the indicated delay.",
"instance": "GET /v1/admin/tenants/self",
"code": "COMMON.RATE_LIMIT.EXCEEDED",
"parameters": {}
}Sales Orders
Edit the delivery dates of several Sales Order Lines
Applies the same delivery dates to every listed line in one operation. Requested and committed dates change only when their update flag is true; a null value then clears them. A null dueAt keeps each line’s target date. Requires Planning.SalesOrders.Write permissions
PATCH
/
v1
/
planning
/
salesOrders
/
{orderReference}
/
lines
/
deliveryDates
Edit the delivery dates of several Sales Order Lines
curl --request PATCH \
--url https://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"lineReferences": [
"<string>"
],
"updateRequestedDeliveryAt": true,
"requestedDeliveryAt": "2023-11-07T05:31:56Z",
"updateCommittedDeliveryAt": true,
"committedDeliveryAt": "2023-11-07T05:31:56Z",
"dueAt": "2023-11-07T05:31:56Z"
}
'import requests
url = "https://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates"
payload = {
"lineReferences": ["<string>"],
"updateRequestedDeliveryAt": True,
"requestedDeliveryAt": "2023-11-07T05:31:56Z",
"updateCommittedDeliveryAt": True,
"committedDeliveryAt": "2023-11-07T05:31:56Z",
"dueAt": "2023-11-07T05:31:56Z"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
lineReferences: ['<string>'],
updateRequestedDeliveryAt: true,
requestedDeliveryAt: '2023-11-07T05:31:56Z',
updateCommittedDeliveryAt: true,
committedDeliveryAt: '2023-11-07T05:31:56Z',
dueAt: '2023-11-07T05:31:56Z'
})
};
fetch('https://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates', 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://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates",
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([
'lineReferences' => [
'<string>'
],
'updateRequestedDeliveryAt' => true,
'requestedDeliveryAt' => '2023-11-07T05:31:56Z',
'updateCommittedDeliveryAt' => true,
'committedDeliveryAt' => '2023-11-07T05:31:56Z',
'dueAt' => '2023-11-07T05:31:56Z'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates"
payload := strings.NewReader("{\n \"lineReferences\": [\n \"<string>\"\n ],\n \"updateRequestedDeliveryAt\": true,\n \"requestedDeliveryAt\": \"2023-11-07T05:31:56Z\",\n \"updateCommittedDeliveryAt\": true,\n \"committedDeliveryAt\": \"2023-11-07T05:31:56Z\",\n \"dueAt\": \"2023-11-07T05:31:56Z\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.patch("https://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"lineReferences\": [\n \"<string>\"\n ],\n \"updateRequestedDeliveryAt\": true,\n \"requestedDeliveryAt\": \"2023-11-07T05:31:56Z\",\n \"updateCommittedDeliveryAt\": true,\n \"committedDeliveryAt\": \"2023-11-07T05:31:56Z\",\n \"dueAt\": \"2023-11-07T05:31:56Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bold-factory.com/v1/planning/salesOrders/{orderReference}/lines/deliveryDates")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"lineReferences\": [\n \"<string>\"\n ],\n \"updateRequestedDeliveryAt\": true,\n \"requestedDeliveryAt\": \"2023-11-07T05:31:56Z\",\n \"updateCommittedDeliveryAt\": true,\n \"committedDeliveryAt\": \"2023-11-07T05:31:56Z\",\n \"dueAt\": \"2023-11-07T05:31:56Z\"\n}"
response = http.request(request)
puts response.read_body{
"type": "https://api.bold-factory.com/errors/COMMON.QUERY.FILTER_PARSING_FAILED",
"title": "Filter parsing failed",
"status": 400,
"detail": "The filter string could not be parsed or contains invalid column references: CreatedBy column does not exist.",
"instance": "POST /v1/items/families/search",
"code": "COMMON.QUERY.FILTER_PARSING_FAILED"
}{
"type": "https://www.rfc-editor.org/rfc/rfc9110.html#name-401-unauthorized",
"title": "Unauthorized",
"status": 401,
"detail": "You are not authenticated.",
"instance": "GET /v1/items/skus"
}{
"type": "https://api.bold-factory.com/errors/COMMON.AUTH.MISSING_PERMISSIONS",
"title": "Missing permissions",
"status": 403,
"detail": "Missing permissions: Items.Families.Read",
"instance": "GET /v1/maintenance/assets",
"code": "COMMON.AUTH.MISSING_PERMISSIONS"
}{
"type": "https://api.bold-factory.com/errors/COMMON.ENTITY.NOT_FOUND",
"title": "The entity was not found.",
"status": 404,
"detail": "Entity Family (pr_72f13bd8218h9823dfj9) was not found.",
"instance": "DELETE /v1/items/families/pr_72f13bd8218h9823dfj9",
"code": "COMMON.ENTITY.NOT_FOUND"
}{
"type": "https://api.bold-factory.com/errors/COMMON.RATE_LIMIT.EXCEEDED",
"title": "Rate limit exceeded",
"status": 429,
"detail": "The request rate limit for this tenant has been exceeded. Retry after the indicated delay.",
"instance": "GET /v1/admin/tenants/self",
"code": "COMMON.RATE_LIMIT.EXCEEDED",
"parameters": {}
}Autorizaciones
JWTApiKey
Use a valid JWT token in the Authorization header with the format 'Bearer {token}'
Parámetros de ruta
Cuerpo
application/json
Respuesta
No Content