RoutingStrategy
Routing Strategy
A reusable, company-owned definition of how an order's fulfillments are split across buildings: which buildings and in what priority, the algorithm, and the maximum number of fulfillments. Applied to an order to create its fulfillments.
type RoutingStrategy {
archivedAt: ISO8601DateTime
buildings: [RoutingBuilding!]!
company: Party!
companyId: ID!
createdAt: ISO8601DateTime!
description: String
destinationGrouping: DestinationGroupingEnum
fallbackWarehouseId: ID @deprecated
fulfillmentStrategy: FulfillmentStrategyEnum!
id: ID!
maxFulfillments: Int!
name: String!
shortfallPolicy: ShortfallPolicyEnum!
updatedAt: ISO8601DateTime!
}
Fields
RoutingStrategy.archivedAt ● ISO8601DateTime scalar common
When the routing strategy was archived, if applicable.
RoutingStrategy.buildings ● [RoutingBuilding!]! non-null object orders
The buildings this strategy routes over, with priority and exclusion.
RoutingStrategy.company ● Party! non-null object common
The company that owns this routing strategy.
RoutingStrategy.companyId ● ID! non-null scalar common
ID of the company that owns this routing strategy.
RoutingStrategy.createdAt ● ISO8601DateTime! non-null scalar common
When the routing strategy was created.
RoutingStrategy.description ● String scalar common
Optional description of the routing strategy.
RoutingStrategy.destinationGrouping ● DestinationGroupingEnum enum orders
How the order's destinations are grouped into fulfillments. Null means the order ships to a single destination.
RoutingStrategy.fallbackWarehouseId ● ID deprecated scalar common
No longer affects routing. Use shortfallPolicy instead.
Formerly the building that took an order inventory could not cover.
RoutingStrategy.fulfillmentStrategy ● FulfillmentStrategyEnum! non-null enum orders
How the strategy chooses buildings and splits the order.
RoutingStrategy.id ● ID! non-null scalar common
Unique identifier for the routing strategy.
RoutingStrategy.maxFulfillments ● Int! non-null scalar common
Maximum number of inventory-backed fulfillments for a single order, or for
each destination when destinationGrouping is set. A backorder created by
shortfallPolicy does not count toward it, so an order may end up with one
more fulfillment than this.
RoutingStrategy.name ● String! non-null scalar common
The name of the routing strategy.
RoutingStrategy.shortfallPolicy ● ShortfallPolicyEnum! non-null enum orders
What the strategy does when no allowed set of buildings can source the whole
order. Only BACKORDER_REMAINDER and SINGLE_FULFILLMENT are valid when
destinationGrouping is set, because a destination has to be planned in full.
RoutingStrategy.updatedAt ● ISO8601DateTime! non-null scalar common
When the routing strategy was last updated.
Returned By
archiveRoutingStrategy mutation ● registerRoutingStrategy mutation ● routingStrategy query ● updateRoutingStrategy mutation
Member Of
RoutingBuilding object ● RoutingStrategyConnection object ● RoutingStrategyEdge object