Inventory Inquiry

This API allows the user to request the inventory information of an item or items that belong to a particular manufacturer.

Supported FormatsJSON

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


The example case will inquire about an inventory with the following properties:

  • Inventory of item “testsku120”
  • At any location of manufacturer 00000

Required Parameters

These parameters are necessary for the Inventory API to return a successful response:

fulfillerIDintegerA unique identifier for a fulfiller. The minimum value is "0".
manufacturerIDintegerA unique identifier for a manufacturer. The minimum value is "100".
typeenumThe inventory request type (ALL, PARTIAL, ANY, ALL_STORES). See below for more details.
itemsarrayList of items to search on. The minimum length is 1. See below for more details.

The type enum values are defined as:

ALLOnly return locations that have ALL of the quantity available for ALL of the products in the request
PARTIALOnly locations that have the ALL of the quantity available for AT LEAST ONE of the products in the request, and only those products
ANYANY location that has ANY quantity available for ANY of the products in the request.
ALL_STORESALL_STORES that are part of the location network will be returned. Those locations that have AT LEAST the quantity in the request available will show their available and onHand quantities. Note: Only one item is allowed for ALL_STORES requests.

The items array is built as an object (/[object]) with the following parameters. The quantity and any one of the other parameters are required.

partNumberstringThe product part number. The minimum length is 1.
upcstringThe product’s Universal Product Code. The minimum length is 1.
skustringThe product’s Stock Keeping Unit code. The minimum length is 1.
quantityintegerThe quantity of the product. The minimum value is "0".

Optional Parameters

Other possible parameters can be provided to specify other details about the product. These variables are:

catalogIDintegerA unique identifier for the catalog. The minimum value is "0".
requestLocationobjectThe specific location that is being requested. See below for more details.
locationNamesarrayList of external location identifiers to search for inventory from.
rejectedLocationsarrayList of numeric location identifiers that should not be included in results. This works like locationBlacklist.
limitintegerThe maximum number of results to return, defaults to 100 for most. The minimum value is "0".
locationWhitelistarrayList of numeric location identifiers that are allowed to be included in results.
locationBlacklistarrayList of numeric location identifiers that are NOT allowed to be included in results. This works like rejectedLocations.
ignoreSafetyStockbooleanWhether to ignore the safety stock buffer put in place. The default is "false".
includeNegativeInventorybooleanWhether to allow items with negative inventory in the results. The default is "false".
shippingLocationbooleanWhether to limit results to locations that are shipping enabled.
taxableLocationbooleanFilter results by locations that apply tax (true) or don’t (false).
restockEnabledbooleanFilter results by locations that are restock-enabled (true) or not (false).
pickupEnabledbooleanFilter results by locations that are pickup-enabled (true) or not (false).
finderbotEnabledbooleanFilter results by locations that have finderbot enabled (true) or don’t (false).
aggregateExportEnabledbooleanFilter results by locations that have aggregate export enabled (true) or don’t (false).
hasStorefrontbooleanFilter results by locations that have physical storefronts (true) or don’t (false).

The requestLocation details (/requestLocation/[object]) include the following parameters. The longitude, latitude, and postal code are required.

longitudenumberThe longitude coordinate of this location.
latitudenumberThe latitude coordinate of this location.
postalCodestringThe postal code of this location.
radiusnumberThe distance from the location. The minimum value is "0".
unitenumThe unit of distance used for the radius ("MILES" or "KM"). The default is "MILES".
countryCodestringThe country code for this location.

The Full Request

This is the entire request that will inquire about an inventory.

 "manufacturerID": "00000",
 "type": "ANY",
 "items": [{
  "partNumber": "testsku120",
  "quantity": 1

The Full Response

This is the entire response of the inquiry. It returns with order data grouped by location. In this case there is only one location with inventory of this product, so there is only one block of data.

If the particular configuration of OMS makes use of inventory attributes, those would be returned in this response as an array of strings. These attributes are cached in an inventory map with no expiration, so they can be retrieved as necessary for cases such as inventory replenishment.

 "locationName": "1",
 "locationID": 111111,
 "manufacturerID": 00000,
 "onHand": 101,
 "available": 94,
 "partNumber": "testsku120"
 "sku": "testsku120",
 "ltd": 0,
 "floor": 0,
 "safetyStock": 0,
 "distance": 0,
 "shippingLocation": true,
 "restockEnabled": false,
 "pickupEnabled": true,
 "countryCode": "US",
 "finderbotEnabled": false,
 "hasStorefront": false

ProductOMS Dev: Inventory Inquiry