Skip to main content

Partner ID

If you build and operate an integration on behalf of Shipmondo customers, you are a technical partner. This guide explains how to identify yourself as the partner behind a request, so the resources you create are attributed to you.

Introduction

A Partner ID is a numeric ID that Shipmondo assigns to you as a technical partner. When it is stored on a shipment, sales order or draft, we can see which partners contribute which shipments.

You provide it in the Partner-ID request header. The header is optional, and it is read on every request to the API — so you set it once as a default header in your HTTP client, and it applies to everything you create.

info

If you don't have a Partner ID yet, contact api-support@shipmondo.com.

Sending the header

The header takes your Partner ID as its value:

Partner-ID: 42

A minimal request looks like this:

curl -X POST https://app.shipmondo.com/api/public/v3/shipments \
-u "$SHIPMONDO_API_USER:$SHIPMONDO_API_KEY" \
-H "Content-Type: application/json" \
-H "Partner-ID: 42" \
-d '{ ... }'

The legacy partner_id field

Before the header existed, the Partner ID could be set as a partner_id field in the request body of POST /shipments, POST /sales_orders and POST /imported_shipments.

That field still works for now, so nothing breaks if you keep using it. Note however:

  • If the header and the body field are both present, the header takes precedence.
  • POST /shipment_drafts supports the header only — it has no partner_id body field.
warning

The partner_id body field is deprecated and will be removed at some point in the future. No deadline has been set yet — when one is decided, we will announce it in the changelog well in advance.

We recommend moving to the Partner-ID header when convenient.

note

The Partner ID is not returned in API responses. It is stored on the resource and used for partner reporting.

Examples

Create a shipment

curl -X POST https://app.shipmondo.com/api/public/v3/shipments \
-u "$SHIPMONDO_API_USER:$SHIPMONDO_API_KEY" \
-H "Content-Type: application/json" \
-H "Partner-ID: 42" \
-d '{
"own_agreement": false,
"product_code": "PDK_MH",
"service_codes": "EMAIL_NT",
"reference": "Order 27016",
"sender": {
"name": "Min Virksomhed ApS",
"address1": "Hvilehøjvej 25",
"zipcode": "5220",
"city": "Odense SØ",
"country_code": "DK"
},
"receiver": {
"name": "Lene Jensen",
"address1": "Vindegade 112",
"zipcode": "5000",
"city": "Odense C",
"country_code": "DK",
"email": "lene@email.dk"
},
"parcels": [
{ "quantity": 1, "weight": 1000, "length": 15, "width": 15, "height": 15 }
]
}'

The shipment is created with Partner ID 42, without partner_id appearing anywhere in the request body.

Create a sales order

curl -X POST https://app.shipmondo.com/api/public/v3/sales_orders \
-u "$SHIPMONDO_API_USER:$SHIPMONDO_API_KEY" \
-H "Content-Type: application/json" \
-H "Partner-ID: 42" \
-d '{
"order_id": "27016",
"ordered_at": "2026-09-07T15:25:44.557+02:00",
"source_name": "Min Virksomhed ApS",
"ship_to": {
"name": "Lene Jensen",
"address1": "Vindegade 112",
"zipcode": "5000",
"city": "Odense C",
"country_code": "DK",
"email": "lene@email.dk"
},
"order_lines": [
{
"line_type": "item",
"item_name": "T-Shirt",
"item_sku": "TS001-WH",
"quantity": "2.0",
"unit_price_excluding_vat": "800.0",
"vat_percent": "0.25",
"currency_code": "DKK"
}
]
}'

Any shipment you later create from this sales order — see Inheritance — is stored with Partner ID 42.

The header takes precedence

curl -X POST https://app.shipmondo.com/api/public/v3/shipments \
-u "$SHIPMONDO_API_USER:$SHIPMONDO_API_KEY" \
-H "Content-Type: application/json" \
-H "Partner-ID: 42" \
-d '{
"partner_id": 7,
"own_agreement": false,
"product_code": "PDK_MH",
...
}'

The shipment is stored with Partner ID 42 — the header value. The "partner_id": 7 in the body is ignored.