Although the Order Routing UI is the easiest way to configure routing resources, some configurations and testing can be performed via API. The Order Routing APIs are grouped into four topics for supporting data lists, filters, groups, and routing. The schemas and request templates are available in the API documentation, but this guide provides a supplemental walkthrough to explain how to use these calls.Documentation Index
Fetch the complete documentation index at: https://docs.kibocommerce.com/llms.txt
Use this file to discover all available pages before exploring further.
Data Lists
Custom data lists are used to create filters, allowing them to fine-tune which cases the filter should be applied for. For instance, if a particular location group cannot fulfill particular product UPCs then a custom data list could be created containing those UPCs. A filter could be applied to the group with that data list applied to the “Item UPC” attribute. This would result in the order being assigned to the group only if the UPC of the order item was not in the list. The supported Data List operations are:How Data Lists Work
A data list must be one of three types: String, Number, or Location. This is the type of values that will populate the list, determined by the dataType parameter. The individual name:value pairs that populate the list are configured in the entries array. This array always identifies the note (or name) and value of the entry. This value is always input as a string regardless of the list type. For example, a String data list may be set as the following when creating or editing a data list:Routing Filters
In Order Routing, filters are used to “filter out” fulfillers within a location group being routed to that do not match certain criteria. For example, a filter can be created so that orders can only be assigned or viewed if a fulfiller is located within 100 miles of the customer. Multiple filters can be applied to a group to further narrow the list of fulfillers. For example, two filters can be created so that the order can be only assigned or viewed if the fulfiller is located within 100 miles of the customer and the order total price is less than $1,000. With the Order Routing APIs, filters can be created based on custom data as well as managed by retrieving existing filter information and deleting a filter. The supported Filter operations are:- SaveCriteriaSetFilter
- SaveCustomDataListFilter
- SaveCustomDataValueFilter
- GetFilter
- DeleteFilter
- TestFilter
- TestSetFilter
Location Groups
Although location groups may be created and managed by the dedicated Location Group API, the Order Routing application also contains API extensions for adjusting groups specifically in the context of calculating routing. The supported Group operations are:- SaveGroup
- SetGroupFilters
- SetGroupSorts
- GetGroup
- DeleteGroup
- TestGroup
Routing Candidates and Suggestions
The Routing API operations include different methods of testing your routing configuration and gathering routing data:- GetSampleRequest
- GetSuggestionLog
- SuggestCandidates
- SuggestRouting
Comparison of Responses
The Candidates API will return acandidateSuggestions collection of locations and their location data that the shipment could potentially be routed to, based on inventory and routing rules. That decisioning logic is included in the response in addition to the location information.
pickupLocationID refers to the pickup location’s identifier within OMS, while the pickupExternalStoreID is used in eCommerce+OMS integrations to specify a location with eCommerce. If both are provided for the call and they do not match, then priority is placed on the pickupLocationID. The request is made using the OMS identifier as the reference location.
Suggestion API Shipment Grouping
The Suggestion API can also group shipments within locations, which provides greater flexibility in managing shipments depending on your business needs. This is supported for both Ship to Home and STH Consolidation transfer shipments, and is accomplished with additional grouping fields on the suggestion response:- The order item data includes a
shipmentGroupidentifier to specify the group for that item, alongside anydatathat you want to copy onto the resulting shipment line item. - An
assignmentSuggestionShipmentGroupsobject defines all shipment groups that appear in the response with their identifier and associated location code, as well as anydatathat you want to copy onto the order.
Reverse Logistics Suggestions
The Order Routing API can also suggest the best return and disposition locations when the Reverse Logistics feature is enabled and configured with routing logic. This is similar to the routing candidate suggestions above, but occurs during the return process and takes into account the item’s return reason and condition. Use the Reverse Logistics Suggestions API to perform your own calls and test behavior. If you want to view a log of the routing, append?returnSuggestionLog=true to the endpoint.

