Skip to content

Orders

View as Markdown

Orders from every connected sales channel, with their labels and documents.

10 operations, generated from the OpenAPI file. Authentication and the base URL are described in the API overview.

GET /api/orders/

List orders

Operation ID orders_list. Authentication: ApiKeyAuth.

Parameters

Name In Type Required Description
address_status query string No Comma-separated address-check statuses; unchecked includes never-checked orders.
attention query string No Comma-separated reasons an open order needs attention: address (held for its address), hold (held by a rule), failed (its automatic label failed). any means all three; a value with no known reason matches no order.
channel query string No Comma-separated sales channels.
date_after query string (date) No Orders placed on or after this date.
date_before query string (date) No Orders placed on or before this date.
exclude_channel query string No Comma-separated sales channels to leave out.
fulfillment_status query string No Comma-separated fulfillment statuses.
page query integer No A page number within the paginated result set.
page_size query integer No Number of results to return per page.
payment_status query string No Comma-separated payment statuses.
q query string No Search order number, customer, recipient, tracking number, address, phone or company.
stage query string (enum) No One lifecycle stage. An unknown value is ignored. One of: cancelled, delivered, labels, open, shipped.

Responses

Status Description Body
200 PaginatedOrderList (application/json)

Example

Terminal window
curl "https://api.horizonlogistics.eu/api/orders/" \
-H "Authorization: Api-Key $HORIZON_API_KEY"

POST /api/orders/

Create an order

Operation ID orders_create. Authentication: ApiKeyAuth.

Request body

Content type: application/json. Required, OrderRequest.

Responses

Status Description Body
201 Order (application/json)

Example

Terminal window
curl -X POST "https://api.horizonlogistics.eu/api/orders/" \
-H "Authorization: Api-Key $HORIZON_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"recipient_name": "string",
"address1": "string",
"city": "string",
"postal_code": "string",
"country": "string"
}'

POST /api/orders/documents/

Download shipping documents of several orders as one PDF

Operation ID orders_documents_create. Authentication: ApiKeyAuth.

Request body

Content type: application/json. Required, OrderDocumentsRequest.

Responses

Status Description Body
200 string (binary) (application/pdf)

Example

Terminal window
curl -X POST "https://api.horizonlogistics.eu/api/orders/documents/" \
-H "Authorization: Api-Key $HORIZON_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"order_ids": [
0
],
"kinds": [
"packing_slip"
]
}'

GET /api/orders/export/

Export orders as CSV

Operation ID orders_export_retrieve. Authentication: ApiKeyAuth.

Parameters

Name In Type Required Description
address_status query string No Comma-separated address-check statuses; unchecked includes never-checked orders.
attention query string No Comma-separated reasons an open order needs attention: address (held for its address), hold (held by a rule), failed (its automatic label failed). any means all three; a value with no known reason matches no order.
channel query string No Comma-separated sales channels.
date_after query string (date) No Orders placed on or after this date.
date_before query string (date) No Orders placed on or before this date.
exclude_channel query string No Comma-separated sales channels to leave out.
fulfillment_status query string No Comma-separated fulfillment statuses.
payment_status query string No Comma-separated payment statuses.
q query string No Search order number, customer, recipient, tracking number, address, phone or company.
stage query string (enum) No One lifecycle stage. An unknown value is ignored. One of: cancelled, delivered, labels, open, shipped.

Responses

Status Description Body
200 string (text/csv)

Example

Terminal window
curl "https://api.horizonlogistics.eu/api/orders/export/" \
-H "Authorization: Api-Key $HORIZON_API_KEY"

GET /api/orders/facets/

List filter values in use

Operation ID orders_facets_retrieve. Authentication: ApiKeyAuth.

Responses

Status Description Body
200 OrderFacets (application/json)

Example

Terminal window
curl "https://api.horizonlogistics.eu/api/orders/facets/" \
-H "Authorization: Api-Key $HORIZON_API_KEY"

POST /api/orders/labels-batch/

Download the labels of several orders as one PDF

Operation ID orders_labels_batch_create. Authentication: ApiKeyAuth.

Request body

Content type: application/json. Required, OrderSelectionRequest.

Responses

Status Description Body
200 string (binary) (application/pdf)

Example

Terminal window
curl -X POST "https://api.horizonlogistics.eu/api/orders/labels-batch/" \
-H "Authorization: Api-Key $HORIZON_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"order_ids": [
0
]
}'

GET /api/orders/{id}/

Retrieve an order

Operation ID orders_retrieve. Authentication: ApiKeyAuth.

Parameters

Name In Type Required Description
id path integer Yes

Responses

Status Description Body
200 Order (application/json)

Example

Terminal window
curl "https://api.horizonlogistics.eu/api/orders/{id}/" \
-H "Authorization: Api-Key $HORIZON_API_KEY"

GET /api/orders/{id}/documents/

List the documents available for an order

Operation ID orders_documents_retrieve. Authentication: ApiKeyAuth.

Parameters

Name In Type Required Description
id path integer Yes

Responses

Status Description Body
200 object (map of object) (application/json)

Example

Terminal window
curl "https://api.horizonlogistics.eu/api/orders/{id}/documents/" \
-H "Authorization: Api-Key $HORIZON_API_KEY"

GET /api/orders/{id}/documents/{kind}/

Download one document of an order

Operation ID orders_document_download. Authentication: ApiKeyAuth.

Parameters

Name In Type Required Description
id path integer Yes
kind path string (enum) Yes One of: commercial_invoice, packing_slip, pick_list.

Responses

Status Description Body
200 string (binary) (application/pdf)

Example

Terminal window
curl "https://api.horizonlogistics.eu/api/orders/{id}/documents/{kind}/" \
-H "Authorization: Api-Key $HORIZON_API_KEY"

POST /api/orders/{id}/refresh-tracking/

Refresh an order’s tracking

Operation ID orders_refresh_tracking_create. Authentication: ApiKeyAuth.

Parameters

Name In Type Required Description
id path integer Yes

Responses

Status Description Body
200 OrderTrackingRefresh (application/json)

Example

Terminal window
curl -X POST "https://api.horizonlogistics.eu/api/orders/{id}/refresh-tracking/" \
-H "Authorization: Api-Key $HORIZON_API_KEY"

Schemas

The objects the operations above send and receive. Fields of a nested object are listed under their parent (address.city, lines[].sku); a nested named object links to its own entry.

Fulfillment

Field Type Required Description
id integer Yes Read-only.
external_id string Yes Shopify fulfillment_id, Woo order_id, etc. Read-only.
name string Yes Read-only.
status string Yes Read-only.
service string Yes Read-only.
tracking_company string Yes Read-only.
tracking_number string Yes Read-only.
tracking_numbers any Yes Read-only.
tracking_url string Yes Read-only.
tracking_urls any Yes Read-only.
tracking_url_text string Yes Read-only.
tracking_urls_text any Yes Read-only.
tracking_url_unsafe boolean Yes Read-only.
source_created_at string (date-time), nullable Yes Read-only.
source_updated_at string (date-time), nullable Yes Read-only.
tracking_events any Yes Read-only.
tracking_events_status string (enum) Yes pending - Pending; active - Active; delivered - Delivered; stale - Stale; not_found - Not found; error - Error; skipped - Skipped. Read-only.
tracking_events_provider_status string Yes Read-only.
tracking_events_provider_status_changed_at string (date-time), nullable Yes Best known instant the current provider status began. Read-only.
tracking_events_sub_status string Yes Read-only.
tracking_events_last_event_at string (date-time), nullable Yes Newest carrier event time; distinct from the last poll time. Read-only.
tracking_events_last_polled_at string (date-time), nullable Yes Read-only.
passport_id any Yes Read-only.
passport_ids_by_sku any Yes Read-only.

Order

Field Type Required Description
id integer Yes Read-only.
shipments array of Shipment Yes Read-only.
shopify_fulfillments array of ShopifyFulfillment Yes Read-only.
fulfillments array of Fulfillment Yes Read-only.
carrier_shipment any Yes Read-only.
address_check_summary any Yes Read-only.
checkout_method any Yes Read-only.
label_purchase any Yes Read-only.
label_caution any Yes Read-only.
external_id string, nullable No Max length 64.
shopify_order_id integer, nullable Yes Immutable numeric Shopify order id (the order GID tail). Read-only.
shop_id integer, nullable Yes Read-only.
recipient_name string Yes Max length 120.
address1 string Yes Max length 200.
city string Yes Max length 120.
postal_code string Yes Max length 40.
country string Yes ISO 2-letter, e.g. GB, NL. Max length 2.
phone string, nullable No Max length 40.
items any No List of {sku, qty, weight_kg, name?, price?, vendor?, …}.
weight_kg number (double) No
status string (enum) No ready - Ready to Ship; shipped - Shipped; cancelled - Cancelled; refunded - Refunded; unknown - Unknown.
created_at string (date-time) Yes Read-only.
order_name string, nullable No e.g. #1001. Max length 64.
order_date string (date-time), nullable No
customer_name string, nullable No Max length 120.
channel string, nullable No Max length 80.
total_amount string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
currency string, nullable No Max length 3.
payment_status string, nullable No Max length 40.
fulfillment_status string, nullable No Max length 40.
delivery_status string, nullable No Max length 40.
delivery_method string, nullable No Max length 255.
customer_locale string Yes Read-only.
customer_email string, nullable No Max length 254.
order_phone string, nullable No Order-level phone, distinct from shipping phone. Max length 40.
accepts_marketing boolean, nullable No
address2 string, nullable No Max length 200.
company string, nullable No Max length 200.
province_code string, nullable No Max length 10.
province_name string, nullable No Max length 120.
billing_address any No {name, first_name, last_name, company, address1, address2, city, zip, province, province_code, country, country_code, phone}.
subtotal_price string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
total_shipping string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
total_tax string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
discount_amount string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
total_refunded string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
total_outstanding string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
total_duties string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
discount_code string, nullable No First discount code if multiple. Max length 255.
payment_method string, nullable No First of payment_gateway_names. Max length 255.
payment_reference string, nullable No Max length 120.
payment_id string, nullable No Max length 120.
paid_at string (date-time), nullable No
payment_terms_name string, nullable No Max length 120.
next_payment_due_at string (date-time), nullable No
tax_lines any No [{title, rate, price}].
tags any No List of tag strings.
shipping_overrides any Yes Automation-written label overrides: {carrier, service_code, insurance}. Read-only.
label_automation any, nullable Yes Read-only.
address_check any, nullable Yes Read-only.
note string, nullable No
note_attributes any No [{name, value}].
cancelled_at string (date-time), nullable No
fulfilled_at string (date-time), nullable No
risk_level string, nullable No Max length 20.
owner integer, nullable Yes Read-only.
customer integer, nullable No

OrderDocumentsRequest

Field Type Required Description
order_ids array of integer Yes
kinds array of string (enum) Yes

OrderFacets

Field Type Required Description
payment_status array of string Yes
fulfillment_status array of string Yes
channel array of string Yes

OrderRequest

Field Type Required Description
external_id string, nullable No Max length 64.
recipient_name string Yes Min length 1, max length 120.
address1 string Yes Min length 1, max length 200.
city string Yes Min length 1, max length 120.
postal_code string Yes Min length 1, max length 40.
country string Yes ISO 2-letter, e.g. GB, NL. Min length 1, max length 2.
phone string, nullable No Max length 40.
items any No List of {sku, qty, weight_kg, name?, price?, vendor?, …}.
weight_kg number (double) No
status string (enum) No ready - Ready to Ship; shipped - Shipped; cancelled - Cancelled; refunded - Refunded; unknown - Unknown.
order_name string, nullable No e.g. #1001. Max length 64.
order_date string (date-time), nullable No
customer_name string, nullable No Max length 120.
channel string, nullable No Max length 80.
total_amount string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
currency string, nullable No Max length 3.
payment_status string, nullable No Max length 40.
fulfillment_status string, nullable No Max length 40.
delivery_status string, nullable No Max length 40.
delivery_method string, nullable No Max length 255.
customer_email string, nullable No Max length 254.
order_phone string, nullable No Order-level phone, distinct from shipping phone. Max length 40.
accepts_marketing boolean, nullable No
address2 string, nullable No Max length 200.
company string, nullable No Max length 200.
province_code string, nullable No Max length 10.
province_name string, nullable No Max length 120.
billing_address any No {name, first_name, last_name, company, address1, address2, city, zip, province, province_code, country, country_code, phone}.
subtotal_price string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
total_shipping string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
total_tax string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
discount_amount string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
total_refunded string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
total_outstanding string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
total_duties string (decimal), nullable No Pattern ^-?\d{0,8}(?:\.\d{0,2})?$.
discount_code string, nullable No First discount code if multiple. Max length 255.
payment_method string, nullable No First of payment_gateway_names. Max length 255.
payment_reference string, nullable No Max length 120.
payment_id string, nullable No Max length 120.
paid_at string (date-time), nullable No
payment_terms_name string, nullable No Max length 120.
next_payment_due_at string (date-time), nullable No
tax_lines any No [{title, rate, price}].
tags any No List of tag strings.
note string, nullable No
note_attributes any No [{name, value}].
cancelled_at string (date-time), nullable No
fulfilled_at string (date-time), nullable No
risk_level string, nullable No Max length 20.
customer integer, nullable No

OrderSelectionRequest

Field Type Required Description
order_ids array of integer Yes

OrderTrackingRefresh

Field Type Required Description
queued integer Yes
skipped array of OrderTrackingRefreshSkip Yes
fulfillments_total integer Yes

OrderTrackingRefreshSkip

Field Type Required Description
fulfillment_id integer Yes
status string Yes
reason string Yes

PaginatedOrderList

Field Type Required Description
count integer Yes
next string (uri), nullable No
previous string (uri), nullable No
results array of Order Yes

Shipment

Field Type Required Description
id integer Yes Read-only.
carrier string (enum) No One of: mock, dhl, ups, dpd, mondial_relay.
service string No Max length 50.
label_url one of string (uri), string, nullable No
tracking_number string, nullable No Max length 64.
status string No Max length 30.
meta any No
created_at string (date-time) Yes Read-only.
order integer Yes

ShopifyFulfillment

Field Type Required Description
id integer Yes Read-only.
fulfillment_id string Yes Shopify fulfillment ID. Read-only.
name string Yes Read-only.
status string Yes Read-only.
service string Yes Read-only.
tracking_company string Yes Read-only.
tracking_number string Yes Primary tracking number. Read-only.
tracking_numbers any Yes All tracking numbers for this fulfillment. Read-only.
tracking_url string Yes Primary tracking URL. Read-only.
tracking_urls any Yes All tracking URLs for this fulfillment. Read-only.
shopify_created_at string (date-time), nullable Yes Read-only.
shopify_updated_at string (date-time), nullable Yes Read-only.
tracking_events any Yes Read-only.
tracking_events_status string (enum) Yes pending - Pending; active - Active; delivered - Delivered; stale - Stale; not_found - Not found; error - Error; skipped - Skipped. Read-only.
tracking_events_provider_status string Yes Read-only.
tracking_events_provider_status_changed_at string (date-time), nullable Yes Best known instant the current provider status began. Read-only.
tracking_events_sub_status string Yes Read-only.
tracking_events_last_event_at string (date-time), nullable Yes Newest carrier event time; distinct from the last poll time. Read-only.
tracking_events_last_polled_at string (date-time), nullable Yes Read-only.
passport_id any Yes Read-only.
passport_ids_by_sku any Yes Read-only.