For clean Markdown of any page, append .md to the page URL. For a complete documentation index, see https://developer.shipbob.com/api/inventory/llms.txt. For full documentation content, see https://developer.shipbob.com/api/inventory/llms-full.txt.

# Get All Inventories

GET https://api.shipbob.com/2026-01/inventory

Retrieves a paginated list of all inventory items. Supports filtering by active status, tags, and various product attributes. Use query parameters to search and filter results.

Reference: https://developer.shipbob.com/api/inventory/get-all-inventories

## OpenAPI Specification

```yaml
openapi: 3.1.0
info:
  title: api-2026-01
  version: 1.0.0
paths:
  /2026-01/inventory:
    get:
      operationId: get-all-inventories
      summary: Get All Inventories
      description: >-
        Retrieves a paginated list of all inventory items. Supports filtering by
        active status, tags, and various product attributes. Use query
        parameters to search and filter results.
      tags:
        - subpackage_inventory
      parameters:
        - name: SearchBy
          in: query
          description: >-
            Search is available for 3 fields: Inventory ID, Name, and SKU.
            Expected behavior for search by Inventory ID is exact match.
            Expected behavior for search by Inventory Name or SKU is partial
            match (consecutive characters, case insensitive).
          required: false
          schema:
            type: string
        - name: FilterOperations
          in: query
          description: >-
            Advanced filtering operations. Apply multiple key-value filters to
            refine inventory results. Each filter operation contains a 'key'
            (field name) and 'rawValue' (filter value) to match.
          required: false
          schema:
            type: string
        - name: InventoryIds
          in: query
          description: >-
            Comma-separated list of inventory IDs to filter results. Use this to
            retrieve information for specific inventory items only.
          required: false
          schema:
            type: string
        - name: IsActive
          in: query
          description: >-
            Filter by active status. True returns only active inventory items,
            False returns only inactive items. Omit to return both.
          required: false
          schema:
            type: boolean
        - name: IsDigital
          in: query
          description: >-
            Filter by digital product status. True returns only digital products
            (no physical fulfillment), False returns only physical products.
            Omit to return both.
          required: false
          schema:
            type: boolean
        - name: PageSize
          in: query
          description: >-
            Number of items to return per page. Controls pagination size for the
            response.
          required: false
          schema:
            type: string
            format: int32
        - name: SortBy
          in: query
          description: >-
            Sort results by field name. Default is ascending order. Prefix with
            '-' for descending order (e.g., '-name' sorts by name descending).
            Multiple fields can be comma-separated.
          required: false
          schema:
            type: string
        - name: Authorization
          in: header
          description: Authentication using Personal Access Token (PAT) token or OAuth2
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory.InventoryResponsePagedResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory.ProblemDetails'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory.ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Inventory.ProblemDetails'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                description: Any type
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                description: Any type
servers:
  - url: https://api.shipbob.com
  - url: https://sandbox-api.shipbob.com
components:
  schemas:
    Inventory.DimensionsResponse:
      type: object
      properties:
        height:
          type: number
          format: double
          description: Height measurement of the inventory item
        is_locked:
          type: boolean
          description: Indicates whether dimensions are locked and cannot be modified
        length:
          type: number
          format: double
          description: Length measurement of the inventory item
        unit:
          type:
            - string
            - 'null'
          description: Unit of measurement for dimensions (i.e. inches)
        validated:
          type: boolean
          description: Indicates whether dimensions have been validated by warehouse staff
        width:
          type: number
          format: double
          description: Width measurement of the inventory item
      title: Inventory.DimensionsResponse
    Inventory.HazmatResponse:
      type: object
      properties:
        is_hazmat:
          type: boolean
          description: Indicates if the inventory item is classified as hazardous material
        validated:
          type: boolean
          description: Indicates whether hazmat status has been validated and confirmed
      title: Inventory.HazmatResponse
    Inventory.VariantResponse:
      type: object
      properties:
        hazmat:
          $ref: '#/components/schemas/Inventory.HazmatResponse'
          description: Hazardous materials information
        is_active:
          type: boolean
          description: >-
            Indicates if the variant is currently active and available for
            fulfillment
        is_bundle:
          type: boolean
          description: Indicates if this item is a bundle of multiple products
        is_digital:
          type: boolean
          description: >-
            Indicates if this is a digital product (no physical fulfillment
            required)
      title: Inventory.VariantResponse
    Inventory.WeightResponse:
      type: object
      properties:
        unit:
          type:
            - string
            - 'null'
          description: Unit of measurement for weight (e.g., pounds, kilograms)
        value:
          type: number
          format: double
          description: Weight value of the inventory item
      title: Inventory.WeightResponse
    Inventory.InventoryResponse:
      type: object
      properties:
        barcode:
          type:
            - string
            - 'null'
          description: Barcode associated with the inventory item
        dimensions:
          $ref: '#/components/schemas/Inventory.DimensionsResponse'
          description: Physical dimensions of the inventory item
        inventory_id:
          type: integer
          description: Unique identifier for the inventory item
        is_case:
          type: boolean
          description: Indicates if the inventory item is stored in cases
        is_lot:
          type: boolean
          description: Indicates if the inventory item is tracked by lot number
        name:
          type:
            - string
            - 'null'
          description: Name of the inventory item
        sku:
          type:
            - string
            - 'null'
          description: Stock keeping unit identifier
        user_id:
          type: integer
          description: User ID associated with this inventory item
        variant:
          $ref: '#/components/schemas/Inventory.VariantResponse'
          description: Variant details including active status and product characteristics
        weight:
          $ref: '#/components/schemas/Inventory.WeightResponse'
          description: Weight information of the inventory item
      title: Inventory.InventoryResponse
    Inventory.InventoryResponsePagedResponse:
      type: object
      properties:
        first:
          type:
            - string
            - 'null'
          description: >-
            URL to retrieve the first page of results. Null if already on the
            first page.
        items:
          type:
            - array
            - 'null'
          items:
            $ref: '#/components/schemas/Inventory.InventoryResponse'
          description: Array of inventory items in the current page of results.
        last:
          type:
            - string
            - 'null'
          description: >-
            URL to retrieve the last page of results. Null if already on the
            last page.
        next:
          type:
            - string
            - 'null'
          description: URL to retrieve the next page of results. Null if on the last page.
        prev:
          type:
            - string
            - 'null'
          description: >-
            URL to retrieve the previous page of results. Null if on the first
            page.
      title: Inventory.InventoryResponsePagedResponse
    Inventory.ProblemDetails:
      type: object
      properties:
        detail:
          type:
            - string
            - 'null'
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem.
        instance:
          type:
            - string
            - 'null'
          description: >-
            A URI reference that identifies the specific occurrence of the
            problem. It may or may not yield further information if
            dereferenced.
        status:
          type:
            - integer
            - 'null'
          description: The HTTP status code for this occurrence of the problem.
        title:
          type:
            - string
            - 'null'
          description: A short, human-readable summary of the problem type.
        type:
          type:
            - string
            - 'null'
          description: >-
            A URI reference that identifies the problem type. This URI should
            provide human-readable documentation for the problem.
      title: Inventory.ProblemDetails
  securitySchemes:
    PAT:
      type: http
      scheme: bearer
      description: Authentication using Personal Access Token (PAT) token or OAuth2

```

## SDK Code Examples

```python Inventory_getAllInventories_example
import requests

url = "https://api.shipbob.com/2026-01/inventory"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.json())
```

```javascript Inventory_getAllInventories_example
const url = 'https://api.shipbob.com/2026-01/inventory';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go Inventory_getAllInventories_example
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.shipbob.com/2026-01/inventory"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "Bearer <token>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby Inventory_getAllInventories_example
require 'uri'
require 'net/http'

url = URI("https://api.shipbob.com/2026-01/inventory")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
```

```java Inventory_getAllInventories_example
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.shipbob.com/2026-01/inventory")
  .header("Authorization", "Bearer <token>")
  .asString();
```

```php Inventory_getAllInventories_example
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.shipbob.com/2026-01/inventory', [
  'headers' => [
    'Authorization' => 'Bearer <token>',
  ],
]);

echo $response->getBody();
```

```csharp Inventory_getAllInventories_example
using RestSharp;

var client = new RestClient("https://api.shipbob.com/2026-01/inventory");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer <token>");
IRestResponse response = client.Execute(request);
```

```swift Inventory_getAllInventories_example
import Foundation

let headers = ["Authorization": "Bearer <token>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.shipbob.com/2026-01/inventory")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```