Skip to main content

supplyAdvanceShipments

Advances multiple shipments to their next status in the shipment lifecycle.

Authentication

Requires authentication and the supply:change_shipment_status permission.

Behavior

  • This mutation processes shipments asynchronously. It returns immediately with a processId that can be used to track the operation's progress.
  • Each shipment advances to the next status based on its current status and the defined status rules.
  • If a shipment fails to advance (e.g., validation error or terminal status), it will be logged, but the operation continues processing remaining shipments.
  • The mutation processes shipments in batches of 100.

Validation Rules

  • At least one shipment ID must be provided.
  • Each shipment must exist and belong to the authenticated user's brand.
  • Shipments must not be in a terminal state.
  • The status transition must be valid according to the shipment status rules.

Possible Errors

  • No shipment IDs provided - The shipment ID list is empty.
  • Shipment not found - One or more shipments do not exist or do not belong to the brand.
  • Shipment is in a terminal state and cannot be advanced - The shipment has reached its final status.
supplyAdvanceShipments(
input: AdvanceShipmentsInput!
): AsynchronousActionResponse!

Arguments

supplyAdvanceShipments.input ● AdvanceShipmentsInput! non-null input

Parameters for AdvanceShipments

Type

AsynchronousActionResponse object

Asynchronous action response type