Skip to main content
POST
Update Shipment (v5.2)

Authorizations

Authorization
string
header
required

Used by every functional endpoint. Generate the token with POST /auth/oauth/token/ and send it as Authorization: Bearer {token}.

Query Parameters

shipment_uuid
string<uuid>

Perform.AI identifier of the Shipment. Provide either shipment_uuid or shipment_id.

shipment_id
string

Your identifier of the Shipment. Provide either shipment_uuid or shipment_id.

Maximum string length: 50

Body

application/json

Same fields and constraints as Create Shipment; no field is required. Most fields replace the stored value entirely (whole arrays, whole address objects); tags, events, linked_shipments, and documents are add-only.

shipment_id
string
required

Your unique identifier. Unique across the account; cannot be changed after creation. Accepts A–Z a–z 0–9 _ - ., no spaces.

Maximum string length: 50
tracking_number
string

Carrier tracking number — optional, but needed (with carrier_reference) for tracking. A–Z a–z 0–9 _ - . /, no spaces, at least one digit. Stored uppercase.

Required string length: 6 - 50
carrier_reference
string

A carrier reference configured under Settings > Carriers. An unconfigured value blocks creation.

Maximum string length: 50
shipment_reference
string
Maximum string length: 50
additional_reference
string
Maximum string length: 50
order_uuid
string<uuid>

Attach to an existing order by its Perform.AI identifier. Preferred over order_id if both are sent.

order_id
string

Your order identifier. Creates the order if it doesn't exist.

Maximum string length: 50
order_reference
string

Settable only together with a new order_id.

Maximum string length: 50
order_source_type
string
Maximum string length: 500
order_source_name
string
Maximum string length: 500
tags
string[]

Stored lowercase.

Maximum string length: 100
notification_email
string<email>[]

Recipients of tracking email notifications.

Maximum string length: 100
notification_phone
string[]

Recipients of tracking SMS notifications, as +{country code}{number}.

Maximum string length: 30
tracking_page_reference
string

Assigns the Shipment to a tracking page for notification branding and tracking links. An unconfigured value returns a 299 warning.

Maximum string length: 50
recipient_address
object

One of the Shipment's five address roles (recipient, sender, to, from, return). Provide either country or country_code. The email and phone here are contact data — they are never subscribed to tracking notifications.

sender_address
object

One of the Shipment's five address roles (recipient, sender, to, from, return). Provide either country or country_code. The email and phone here are contact data — they are never subscribed to tracking notifications.

to_address
object

One of the Shipment's five address roles (recipient, sender, to, from, return). Provide either country or country_code. The email and phone here are contact data — they are never subscribed to tracking notifications.

from_address
object

One of the Shipment's five address roles (recipient, sender, to, from, return). Provide either country or country_code. The email and phone here are contact data — they are never subscribed to tracking notifications.

return_address
object

One of the Shipment's five address roles (recipient, sender, to, from, return). Provide either country or country_code. The email and phone here are contact data — they are never subscribed to tracking notifications.

shipment_value
string

Money string, e.g. 150 SGD.

total_shipping_cost
string

Money string. Computed from shipping_costs if not provided.

shipping_costs
object[]
cod_value
string

Money string.

payment_type
string
Maximum string length: 75
length
string

Measurement string, e.g. 15 cm. Stored in cm.

width
string

Measurement string. Stored in cm.

height
string

Measurement string. Stored in cm.

weight
string

Measurement string, e.g. 1.5 kg.

item_count
integer
Required range: x >= 0
packaging_type
string
Maximum string length: 75
note
string
Maximum string length: 500
description_of_goods
string
Maximum string length: 500
handling_instructions
string
Maximum string length: 500
sales_channel
string
Maximum string length: 100
shipping_service
string
Maximum string length: 50
expected_delivery_from
string

ISO 8601. Start of the expected delivery window.

expected_delivery_to
string

ISO 8601. Requires expected_delivery_from.

events
object[]
linked_shipments
object[]
documents
object[]
line_items
object[]
additional_info
object

Custom fields. Keys max 50 chars, values max 150.

tags_action
enum<string>
default:add

How the provided tags are applied.

Available options:
add,
remove,
replace

Response

Shipment updated.

Response of Create Shipment and Update Shipment.

api_response
string
data
object