List packages
Returns a paginated list of shipment packages for the entity. Supports filtering by order_id,
status (draft / packed / shipped / delivered), carrier, date_range, and location_id
(Layer 4 warehouse isolation, inherited via the package’s order). Results are
cursor-paginated using next_cursor.
Requires fulfillment:read scope.
Authorizations
API key issued per entity via Settings > Developers > API Keys.
Each key carries scopes (e.g. orders:read, products:write).
Bearer token format: Authorization: Bearer ark_live_ent_Test keys use ark_test_ent_. Both are issued per entity
via Settings > Developers > API Keys.
Query Parameters
open, fulfilled, voided Filter to a single warehouse location (Layer 4 isolation). Resolved from the
X-Location-Id request header first, then this query param. Packages inherit
location from their order (packages.order_id -> orders.location_id); packages
whose order has NULL location_id remain visible at every location
(NULL-universal).
When true, draft packages with zero items are excluded from the
response. Useful for operator queues that should never show
orphan packages while still allowing audit workflows to fetch
them with the default false. Default: false
(backwards-compat; every existing caller continues to receive
empty drafts). Added 2026-05-16 per
NEW-GAP-WH-ORPHAN-EMPTY-DRAFT-PACKAGES-LITTER-FULFILLMENT-STATION.
Maximum number of records to return per page. Default 25, max 500. Use together with starting_after for cursor pagination. For larger bulk extraction workflows prefer the migration endpoints.
1 <= x <= 500Cursor for pagination. Pass the id of the last record from the previous page to fetch the next page. Mutually exclusive with ending_before.
200data.items, data.items.product, data.label, data.tracking_events, data.order 
