Skip to content

Get Shipment

GraphQL counterpart of GET /api/admin/shipments/{id}. Returns a single shipment with the order/customer context, both addresses, and the shipped line items inlined — everything the listing leaves out.

Operation

OperationType
adminShipment(id: ID!)Query

Pass the shipment IRI (/api/admin/shipments/{id}) as id. Permission: sales.shipments.view.

billingAddress, shippingAddress and items are returned whole

billingAddress, shippingAddress and items are returned as JSON — query them bare, without a sub-selection (shippingAddress, not shippingAddress { … }). The whole object/array comes back. The keys inside each are listed below for reference.

Fields

FieldTypeDescription
idIDResource identifier (IRI form).
_idIntNumeric shipment id.
orderIdIntId of the parent order.
orderIncrementIdStringHuman-facing number of the parent order.
shippedToStringThe name on the order's shipping address.
orderDateStringWhen the order was placed.
orderStatusStringParent order status code.
orderStatusLabelStringParent order status display label.
channelNameStringSales channel the order belongs to.
customerNameStringName of the customer who placed the order.
customerEmailStringEmail of the customer who placed the order.
paymentMethodStringThe order's payment method code (e.g. cashondelivery).
paymentTitleStringThe payment method's display title.
orderCurrencyCodeStringCurrency the order was placed in (e.g. USD).
shippingMethodStringThe order's shipping method code — may be null.
shippingTitleStringThe shipping method's display title — may be null.
baseShippingAmountFloatShipping price in the store's base currency — may be null.
formattedBaseShippingAmountStringThe same shipping price pre-formatted for display — may be null.
statusStringShipment status — often null.
totalQtyFloatTotal quantity shipped across all line items.
totalWeightFloatCombined weight of the shipment — may be null.
carrierCodeStringShipping carrier code — may be null.
carrierTitleStringShipping carrier display name — may be null.
trackNumberStringCarrier tracking number — may be null.
emailSentBooleanWhether the shipment notification email was sent.
inventorySourceIdIntId of the inventory source the items shipped from.
inventorySourceNameStringName of the inventory source (warehouse) the items shipped from.
billingAddressJSONThe order's billing address — see below.
shippingAddressJSONThe order's shipping address — see below.
createdAtStringWhen the shipment was created.
updatedAtStringWhen the shipment was last updated.
itemsJSONThe shipped line items — see below.

Payment and Shipping

Mirrors the "Payment and Shipping" panel on the admin Shipment view — the order's payment and shipping details carried alongside the shipment. These are flat scalar fields and resolve normally (select them directly, no sub-selection). shippingMethod, shippingTitle, baseShippingAmount and formattedBaseShippingAmount are null when the order had no shipping method (e.g. virtual/free).

FieldTypeDescription
paymentMethodStringThe order's payment method code (e.g. cashondelivery).
paymentTitleStringThe payment method's display title (e.g. Cash On Delivery).
orderCurrencyCodeStringCurrency the order was placed in (e.g. USD).
shippingMethodStringThe order's shipping method code (e.g. free_free) — may be null.
shippingTitleStringThe shipping method's display title — may be null.
baseShippingAmountFloatShipping price in the store's base currency — may be null.
formattedBaseShippingAmountStringThe same shipping price pre-formatted for display — may be null.

Address objects (billingAddress, shippingAddress)

Each is returned as a whole JSON object — query it as a bare field (shippingAddress), you cannot sub-select its keys in the query. The keys below are returned inside each object.

FieldTypeDescription
idIntAddress row id.
addressTypeStringorder_billing or order_shipping.
firstName / lastNameStringRecipient name.
cityStringCity.
countryStringCountry code (e.g. US).
postcodeStringPostal code.
emailStringContact email.
phoneStringContact phone.

Shipped items (items)

items is returned as a whole JSON array — query it as a bare field (items), you cannot sub-select its keys in the query. Each entry has the keys below.

FieldTypeDescription
idIntShipment-item row id.
orderItemIdIntThe order line this shipped item maps to.
skuStringProduct SKU.
nameStringProduct name.
qtyFloatQuantity shipped for this line.

Released under the MIT License.