These guides provide examples for many tasks that a developer will need to be familiar with during implementation.



Transition States

A set of actions called “states” update the shipmentStateName property for the shipment to indicate where the package is in the fulfillment process. This also updates the FSM state codes in OMS. An order will need to go through all of the state codes to be fulfilled.

Supported FormatsJSON

The .json address above can be used to access the schema within Postman. An example use of the Shipment API follows below, or view the sample Postman Collection.

The shipment will start in the acceptOrder status, as automatically set by OMS upon order assignment. The endpoints and states that are used in the standard fulfillment process are:

  • pullInventory
  • printPackingSlip
  • shipmentIntegration

When those are complete, the Fulfill Shipment API will be used to put the shipment in its final completePackagestatus. This call has a different structure from the states described here, so go to the Fulfill Shipment guide for more details about that request.


This example will show how to transition a shipment with the Shipment ID 090909.

Required Parameters

Transitioning through states is simple, as it only requires the Shipment ID.

shipmentIDintegerA unique identifier for the shipment. The minimum value is “1”.

The Full Request

The endpoints for each of these standard transition states are:

Each of those three requests has the same body, which only provides the ID as required:

    "shipmentID": 090909 

Other States

There are a number of other possible states that may be triggered by other fulfillment events. For instance, there are multiple pick wave states (placeInWavepickedFromWave, etc.), return states (returnInitiatedreturnAcceptedByFulfiller, etc.), and a state for splitting orders (splitOrder).