curl --request POST \
--url https://api.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"data": [
{
"identifier": "shop-order-1042",
"reference": "ORDER-1042",
"currency": "DKK",
"weight_unit": "g",
"dimension_unit": "cm",
"delivery": {
"service_code": "postnord_agent",
"pickup_point": {
"uuid": "99999999-9999-4999-8999-999999999999"
}
},
"parties": {
"customer": {
"address": {
"address_lines": [
"Eksempelvej 10"
],
"postal_code": "8000",
"city": "Aarhus C",
"country": "DK"
},
"contact": {
"name_lines": [
"Example Customer"
],
"email": "customer@example.com",
"phone": "+4512345678"
}
}
},
"parcels": [
{
"identifier": "shop-parcel-1",
"reference": "ORDER-1042-1",
"gross_weight": 1500,
"length": 30,
"width": 20,
"height": 15
}
]
}
]
}
'import requests
url = "https://api.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments"
payload = { "data": [
{
"identifier": "shop-order-1042",
"reference": "ORDER-1042",
"currency": "DKK",
"weight_unit": "g",
"dimension_unit": "cm",
"delivery": {
"service_code": "postnord_agent",
"pickup_point": { "uuid": "99999999-9999-4999-8999-999999999999" }
},
"parties": { "customer": {
"address": {
"address_lines": ["Eksempelvej 10"],
"postal_code": "8000",
"city": "Aarhus C",
"country": "DK"
},
"contact": {
"name_lines": ["Example Customer"],
"email": "customer@example.com",
"phone": "+4512345678"
}
} },
"parcels": [
{
"identifier": "shop-parcel-1",
"reference": "ORDER-1042-1",
"gross_weight": 1500,
"length": 30,
"width": 20,
"height": 15
}
]
}
] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
data: [
{
identifier: 'shop-order-1042',
reference: 'ORDER-1042',
currency: 'DKK',
weight_unit: 'g',
dimension_unit: 'cm',
delivery: {
service_code: 'postnord_agent',
pickup_point: {uuid: '99999999-9999-4999-8999-999999999999'}
},
parties: {
customer: {
address: {
address_lines: ['Eksempelvej 10'],
postal_code: '8000',
city: 'Aarhus C',
country: 'DK'
},
contact: {
name_lines: ['Example Customer'],
email: 'customer@example.com',
phone: '+4512345678'
}
}
},
parcels: [
{
identifier: 'shop-parcel-1',
reference: 'ORDER-1042-1',
gross_weight: 1500,
length: 30,
width: 20,
height: 15
}
]
}
]
})
};
fetch('https://api.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments', 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.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'data' => [
[
'identifier' => 'shop-order-1042',
'reference' => 'ORDER-1042',
'currency' => 'DKK',
'weight_unit' => 'g',
'dimension_unit' => 'cm',
'delivery' => [
'service_code' => 'postnord_agent',
'pickup_point' => [
'uuid' => '99999999-9999-4999-8999-999999999999'
]
],
'parties' => [
'customer' => [
'address' => [
'address_lines' => [
'Eksempelvej 10'
],
'postal_code' => '8000',
'city' => 'Aarhus C',
'country' => 'DK'
],
'contact' => [
'name_lines' => [
'Example Customer'
],
'email' => 'customer@example.com',
'phone' => '+4512345678'
]
]
],
'parcels' => [
[
'identifier' => 'shop-parcel-1',
'reference' => 'ORDER-1042-1',
'gross_weight' => 1500,
'length' => 30,
'width' => 20,
'height' => 15
]
]
]
]
]),
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.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments"
payload := strings.NewReader("{\n \"data\": [\n {\n \"identifier\": \"shop-order-1042\",\n \"reference\": \"ORDER-1042\",\n \"currency\": \"DKK\",\n \"weight_unit\": \"g\",\n \"dimension_unit\": \"cm\",\n \"delivery\": {\n \"service_code\": \"postnord_agent\",\n \"pickup_point\": {\n \"uuid\": \"99999999-9999-4999-8999-999999999999\"\n }\n },\n \"parties\": {\n \"customer\": {\n \"address\": {\n \"address_lines\": [\n \"Eksempelvej 10\"\n ],\n \"postal_code\": \"8000\",\n \"city\": \"Aarhus C\",\n \"country\": \"DK\"\n },\n \"contact\": {\n \"name_lines\": [\n \"Example Customer\"\n ],\n \"email\": \"customer@example.com\",\n \"phone\": \"+4512345678\"\n }\n }\n },\n \"parcels\": [\n {\n \"identifier\": \"shop-parcel-1\",\n \"reference\": \"ORDER-1042-1\",\n \"gross_weight\": 1500,\n \"length\": 30,\n \"width\": 20,\n \"height\": 15\n }\n ]\n }\n ]\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"data\": [\n {\n \"identifier\": \"shop-order-1042\",\n \"reference\": \"ORDER-1042\",\n \"currency\": \"DKK\",\n \"weight_unit\": \"g\",\n \"dimension_unit\": \"cm\",\n \"delivery\": {\n \"service_code\": \"postnord_agent\",\n \"pickup_point\": {\n \"uuid\": \"99999999-9999-4999-8999-999999999999\"\n }\n },\n \"parties\": {\n \"customer\": {\n \"address\": {\n \"address_lines\": [\n \"Eksempelvej 10\"\n ],\n \"postal_code\": \"8000\",\n \"city\": \"Aarhus C\",\n \"country\": \"DK\"\n },\n \"contact\": {\n \"name_lines\": [\n \"Example Customer\"\n ],\n \"email\": \"customer@example.com\",\n \"phone\": \"+4512345678\"\n }\n }\n },\n \"parcels\": [\n {\n \"identifier\": \"shop-parcel-1\",\n \"reference\": \"ORDER-1042-1\",\n \"gross_weight\": 1500,\n \"length\": 30,\n \"width\": 20,\n \"height\": 15\n }\n ]\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"data\": [\n {\n \"identifier\": \"shop-order-1042\",\n \"reference\": \"ORDER-1042\",\n \"currency\": \"DKK\",\n \"weight_unit\": \"g\",\n \"dimension_unit\": \"cm\",\n \"delivery\": {\n \"service_code\": \"postnord_agent\",\n \"pickup_point\": {\n \"uuid\": \"99999999-9999-4999-8999-999999999999\"\n }\n },\n \"parties\": {\n \"customer\": {\n \"address\": {\n \"address_lines\": [\n \"Eksempelvej 10\"\n ],\n \"postal_code\": \"8000\",\n \"city\": \"Aarhus C\",\n \"country\": \"DK\"\n },\n \"contact\": {\n \"name_lines\": [\n \"Example Customer\"\n ],\n \"email\": \"customer@example.com\",\n \"phone\": \"+4512345678\"\n }\n }\n },\n \"parcels\": [\n {\n \"identifier\": \"shop-parcel-1\",\n \"reference\": \"ORDER-1042-1\",\n \"gross_weight\": 1500,\n \"length\": 30,\n \"width\": 20,\n \"height\": 15\n }\n ]\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"data": [
{
"currency": "DKK",
"weight_unit": "g",
"dimension_unit": "cm",
"invoice_number": null,
"reference": "ORDER-1042",
"identifier": "shop-order-1042",
"uri": null,
"delivery": {
"carrier": {
"code": "postnord",
"name": "PostNord",
"logo_url": null,
"icon_url": null
},
"last_mile_carrier": {
"code": "postnord",
"name": "PostNord",
"logo_url": null,
"icon_url": null
},
"service_code": "postnord_agent",
"service_name": "Service point",
"is_pickup": true,
"is_return": false,
"addons": [],
"pickup_point": {
"uuid": "99999999-9999-4999-8999-999999999999",
"carrier_code": "postnord",
"code": "12345",
"name": "Example Parcel Shop",
"address": {
"address_lines": [
"Eksempelvej 20"
],
"postal_code": "8000",
"city": "Aarhus C",
"country": "DK",
"administrative_area": null
}
},
"delivery_window": null,
"incoterm": null
},
"parties": {
"merchant": {
"reference": null,
"identifier": null,
"uri": null,
"address": {
"address_lines": [
"Eksempelgade 1"
],
"postal_code": "2100",
"city": "Copenhagen",
"country": "DK",
"administrative_area": null
},
"contact": {
"name_lines": [
"Example Shop"
],
"company": "Example Shop",
"email": "shop@example.com",
"phone": "+4587654321"
},
"identifiers": null
},
"customer": {
"reference": null,
"identifier": null,
"uri": null,
"address": {
"address_lines": [
"Eksempelvej 10"
],
"postal_code": "8000",
"city": "Aarhus C",
"country": "DK",
"administrative_area": null
},
"contact": {
"name_lines": [
"Example Customer"
],
"company": null,
"email": "customer@example.com",
"phone": "+4512345678"
},
"identifiers": null
}
},
"parcels": [
{
"reference": "ORDER-1042-1",
"identifier": "shop-parcel-1",
"freetext": null,
"gross_weight": 1500,
"length": 30,
"width": 20,
"height": 15,
"total_net_amount": null,
"tax_amount": null,
"duty_amount": null,
"items": [],
"uuid": "33333333-3333-4333-8333-333333333333",
"tracking_number": null,
"tracking_url": null,
"tracking": null
}
],
"total_net_amount": null,
"tax_amount": null,
"duty_amount": null,
"shipping_net_amount": null,
"shipping_tax_amount": null,
"content_type": null,
"uuid": "22222222-2222-4222-8222-222222222222",
"state": "pending",
"documents": [],
"qr_codes": [],
"drop_off_codes": [],
"batch_uuid": "55555555-5555-4555-8555-555555555555",
"error": null,
"created_at": "2026-09-16T10:00:00Z",
"updated_at": "2026-09-16T10:00:00Z",
"booked_at": null,
"cancelled_at": null,
"voided_at": null
}
]
}Add validated shipments to a batch
Validate and accept 1–100 new immutable shipments in request order. Any upfront validation failure adds none of this request and leaves earlier members unchanged. Snapshot effective team settings at acceptance. Members are pending and are not booked until start. Adding to any non-open batch returns 409. Existing shipment UUIDs cannot be attached or moved between batches.
curl --request POST \
--url https://api.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"data": [
{
"identifier": "shop-order-1042",
"reference": "ORDER-1042",
"currency": "DKK",
"weight_unit": "g",
"dimension_unit": "cm",
"delivery": {
"service_code": "postnord_agent",
"pickup_point": {
"uuid": "99999999-9999-4999-8999-999999999999"
}
},
"parties": {
"customer": {
"address": {
"address_lines": [
"Eksempelvej 10"
],
"postal_code": "8000",
"city": "Aarhus C",
"country": "DK"
},
"contact": {
"name_lines": [
"Example Customer"
],
"email": "customer@example.com",
"phone": "+4512345678"
}
}
},
"parcels": [
{
"identifier": "shop-parcel-1",
"reference": "ORDER-1042-1",
"gross_weight": 1500,
"length": 30,
"width": 20,
"height": 15
}
]
}
]
}
'import requests
url = "https://api.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments"
payload = { "data": [
{
"identifier": "shop-order-1042",
"reference": "ORDER-1042",
"currency": "DKK",
"weight_unit": "g",
"dimension_unit": "cm",
"delivery": {
"service_code": "postnord_agent",
"pickup_point": { "uuid": "99999999-9999-4999-8999-999999999999" }
},
"parties": { "customer": {
"address": {
"address_lines": ["Eksempelvej 10"],
"postal_code": "8000",
"city": "Aarhus C",
"country": "DK"
},
"contact": {
"name_lines": ["Example Customer"],
"email": "customer@example.com",
"phone": "+4512345678"
}
} },
"parcels": [
{
"identifier": "shop-parcel-1",
"reference": "ORDER-1042-1",
"gross_weight": 1500,
"length": 30,
"width": 20,
"height": 15
}
]
}
] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
data: [
{
identifier: 'shop-order-1042',
reference: 'ORDER-1042',
currency: 'DKK',
weight_unit: 'g',
dimension_unit: 'cm',
delivery: {
service_code: 'postnord_agent',
pickup_point: {uuid: '99999999-9999-4999-8999-999999999999'}
},
parties: {
customer: {
address: {
address_lines: ['Eksempelvej 10'],
postal_code: '8000',
city: 'Aarhus C',
country: 'DK'
},
contact: {
name_lines: ['Example Customer'],
email: 'customer@example.com',
phone: '+4512345678'
}
}
},
parcels: [
{
identifier: 'shop-parcel-1',
reference: 'ORDER-1042-1',
gross_weight: 1500,
length: 30,
width: 20,
height: 15
}
]
}
]
})
};
fetch('https://api.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments', 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.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'data' => [
[
'identifier' => 'shop-order-1042',
'reference' => 'ORDER-1042',
'currency' => 'DKK',
'weight_unit' => 'g',
'dimension_unit' => 'cm',
'delivery' => [
'service_code' => 'postnord_agent',
'pickup_point' => [
'uuid' => '99999999-9999-4999-8999-999999999999'
]
],
'parties' => [
'customer' => [
'address' => [
'address_lines' => [
'Eksempelvej 10'
],
'postal_code' => '8000',
'city' => 'Aarhus C',
'country' => 'DK'
],
'contact' => [
'name_lines' => [
'Example Customer'
],
'email' => 'customer@example.com',
'phone' => '+4512345678'
]
]
],
'parcels' => [
[
'identifier' => 'shop-parcel-1',
'reference' => 'ORDER-1042-1',
'gross_weight' => 1500,
'length' => 30,
'width' => 20,
'height' => 15
]
]
]
]
]),
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.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments"
payload := strings.NewReader("{\n \"data\": [\n {\n \"identifier\": \"shop-order-1042\",\n \"reference\": \"ORDER-1042\",\n \"currency\": \"DKK\",\n \"weight_unit\": \"g\",\n \"dimension_unit\": \"cm\",\n \"delivery\": {\n \"service_code\": \"postnord_agent\",\n \"pickup_point\": {\n \"uuid\": \"99999999-9999-4999-8999-999999999999\"\n }\n },\n \"parties\": {\n \"customer\": {\n \"address\": {\n \"address_lines\": [\n \"Eksempelvej 10\"\n ],\n \"postal_code\": \"8000\",\n \"city\": \"Aarhus C\",\n \"country\": \"DK\"\n },\n \"contact\": {\n \"name_lines\": [\n \"Example Customer\"\n ],\n \"email\": \"customer@example.com\",\n \"phone\": \"+4512345678\"\n }\n }\n },\n \"parcels\": [\n {\n \"identifier\": \"shop-parcel-1\",\n \"reference\": \"ORDER-1042-1\",\n \"gross_weight\": 1500,\n \"length\": 30,\n \"width\": 20,\n \"height\": 15\n }\n ]\n }\n ]\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"data\": [\n {\n \"identifier\": \"shop-order-1042\",\n \"reference\": \"ORDER-1042\",\n \"currency\": \"DKK\",\n \"weight_unit\": \"g\",\n \"dimension_unit\": \"cm\",\n \"delivery\": {\n \"service_code\": \"postnord_agent\",\n \"pickup_point\": {\n \"uuid\": \"99999999-9999-4999-8999-999999999999\"\n }\n },\n \"parties\": {\n \"customer\": {\n \"address\": {\n \"address_lines\": [\n \"Eksempelvej 10\"\n ],\n \"postal_code\": \"8000\",\n \"city\": \"Aarhus C\",\n \"country\": \"DK\"\n },\n \"contact\": {\n \"name_lines\": [\n \"Example Customer\"\n ],\n \"email\": \"customer@example.com\",\n \"phone\": \"+4512345678\"\n }\n }\n },\n \"parcels\": [\n {\n \"identifier\": \"shop-parcel-1\",\n \"reference\": \"ORDER-1042-1\",\n \"gross_weight\": 1500,\n \"length\": 30,\n \"width\": 20,\n \"height\": 15\n }\n ]\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.smartsend.io/v2/teams/{teamUuid}/booking-batches/{batch}/shipments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"data\": [\n {\n \"identifier\": \"shop-order-1042\",\n \"reference\": \"ORDER-1042\",\n \"currency\": \"DKK\",\n \"weight_unit\": \"g\",\n \"dimension_unit\": \"cm\",\n \"delivery\": {\n \"service_code\": \"postnord_agent\",\n \"pickup_point\": {\n \"uuid\": \"99999999-9999-4999-8999-999999999999\"\n }\n },\n \"parties\": {\n \"customer\": {\n \"address\": {\n \"address_lines\": [\n \"Eksempelvej 10\"\n ],\n \"postal_code\": \"8000\",\n \"city\": \"Aarhus C\",\n \"country\": \"DK\"\n },\n \"contact\": {\n \"name_lines\": [\n \"Example Customer\"\n ],\n \"email\": \"customer@example.com\",\n \"phone\": \"+4512345678\"\n }\n }\n },\n \"parcels\": [\n {\n \"identifier\": \"shop-parcel-1\",\n \"reference\": \"ORDER-1042-1\",\n \"gross_weight\": 1500,\n \"length\": 30,\n \"width\": 20,\n \"height\": 15\n }\n ]\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"data": [
{
"currency": "DKK",
"weight_unit": "g",
"dimension_unit": "cm",
"invoice_number": null,
"reference": "ORDER-1042",
"identifier": "shop-order-1042",
"uri": null,
"delivery": {
"carrier": {
"code": "postnord",
"name": "PostNord",
"logo_url": null,
"icon_url": null
},
"last_mile_carrier": {
"code": "postnord",
"name": "PostNord",
"logo_url": null,
"icon_url": null
},
"service_code": "postnord_agent",
"service_name": "Service point",
"is_pickup": true,
"is_return": false,
"addons": [],
"pickup_point": {
"uuid": "99999999-9999-4999-8999-999999999999",
"carrier_code": "postnord",
"code": "12345",
"name": "Example Parcel Shop",
"address": {
"address_lines": [
"Eksempelvej 20"
],
"postal_code": "8000",
"city": "Aarhus C",
"country": "DK",
"administrative_area": null
}
},
"delivery_window": null,
"incoterm": null
},
"parties": {
"merchant": {
"reference": null,
"identifier": null,
"uri": null,
"address": {
"address_lines": [
"Eksempelgade 1"
],
"postal_code": "2100",
"city": "Copenhagen",
"country": "DK",
"administrative_area": null
},
"contact": {
"name_lines": [
"Example Shop"
],
"company": "Example Shop",
"email": "shop@example.com",
"phone": "+4587654321"
},
"identifiers": null
},
"customer": {
"reference": null,
"identifier": null,
"uri": null,
"address": {
"address_lines": [
"Eksempelvej 10"
],
"postal_code": "8000",
"city": "Aarhus C",
"country": "DK",
"administrative_area": null
},
"contact": {
"name_lines": [
"Example Customer"
],
"company": null,
"email": "customer@example.com",
"phone": "+4512345678"
},
"identifiers": null
}
},
"parcels": [
{
"reference": "ORDER-1042-1",
"identifier": "shop-parcel-1",
"freetext": null,
"gross_weight": 1500,
"length": 30,
"width": 20,
"height": 15,
"total_net_amount": null,
"tax_amount": null,
"duty_amount": null,
"items": [],
"uuid": "33333333-3333-4333-8333-333333333333",
"tracking_number": null,
"tracking_url": null,
"tracking": null
}
],
"total_net_amount": null,
"tax_amount": null,
"duty_amount": null,
"shipping_net_amount": null,
"shipping_tax_amount": null,
"content_type": null,
"uuid": "22222222-2222-4222-8222-222222222222",
"state": "pending",
"documents": [],
"qr_codes": [],
"drop_off_codes": [],
"batch_uuid": "55555555-5555-4555-8555-555555555555",
"error": null,
"created_at": "2026-09-16T10:00:00Z",
"updated_at": "2026-09-16T10:00:00Z",
"booked_at": null,
"cancelled_at": null,
"voided_at": null
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Preferred language(s) for translatable content using BCP 47 language tags. Supports quality values (q-factors) for priority ordering. The API negotiates the best available language based on this header, the team's configured language, and available translations. If omitted, the team's default language is used.
"da-DK, da;q=0.9, en;q=0.8"
Optional client-supplied request identifier. When provided and matching the validation pattern, the value is echoed back in the Request-ID response header. Otherwise the server generates one. Use this to correlate requests between client and server when reporting issues.
1 - 64^[A-Za-z0-9._-]{1,64}$Optional, case-sensitive key for one intended action. Scope: team, HTTP method and canonical path. Retained for at least 24 hours and while processing. Same key and payload reuses the stored outcome without repeating side effects; the resource representation is current. Changed payload: 422 with an Idempotency-Key entry in errors. Concurrent duplicate: 409 with Retry-After and Location when known. Without a key there is no deduplication. Use GET at Location after 202.
16 - 128^[A-Za-z0-9._-]{16,128}$Path Parameters
Team uuid. All resources are scoped to this team.
UUID of the batch in this team.
Body
Validate the entire request before adding any members. Each shipment must explicitly include currency, weight_unit and dimension_unit; they are not inherited from the batch or team settings.
1 - 100 elementsShow child attributes
Show child attributes
Response
All requested members added.
Created members in request order.
Show child attributes
Show child attributes
Was this page helpful?