Retrieving inventory levels
ShipBob’s GET inventory endpoint will return inventory quantities associated with products that are stocked at a facility. This endpoint will return an inventoryid associated with a product, which is a unique ShipBob identifier. When creating a product via ShipBob’s product API, an inventoryid is automatically generated and retuned in the product creation response. As such, ShipBob recommends implementing one of the following best practices to fetch inventory levels:Option 1 – Fetching products from ShipBob each time inventory levels are updated in your platform
The solution would be to follow this process:- Grab the products in bulk each time you are conducting an inventory sync (1 or multiple calls) using the GET Products endpoint
- Get the list of the product’s inventory components (
inventory_id
is returned in the Product endpoint) - Grab all the inventories in bulk (1 or multiple calls) using the Inventory endpoint
- Reconcile product with inventory. If not a bundle, grab the inventory id and set that as the product sellable. If it is a bundle, you need to do the calculations. If the inventory is inactive or digital, you can skip the product or place a 0 value.
- Note - inventory quantities in ShipBob are tracked at the component level, not at the bundle SKU level.