---
title: "List part inventory"
method: GET
path: "/maintenance/parts/inventory-location"
tags: ["Maintenance"]
---

# List part inventory

`GET /maintenance/parts/inventory-location`

## Request

- Base URL: `https://api.samsara.com`
- URL: `https://api.samsara.com/maintenance/parts/inventory-location`
- Auth: HTTP bearer

Returns a paginated list of per-part, per-location inventory levels for the organization.

 <b>Rate limit:</b> 5 requests/sec (learn more about rate limits <a href="https://developers.samsara.com/docs/rate-limits" target="_blank">here</a>).

To use this endpoint, select **Read Parts** under the Work Orders category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
 

 **Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.

## Query parameters

- `placeIds` string
- `isLowStock` boolean
- `partSamsaraIds` string
- `after` string
- `limit` integer

## Response `200`

OK response.

- EntityPartInventoryLocationsServiceListPartInventoryResponseBody
  - `data` EntityListPartInventoryTypeResponseBody[], required: An array of PartInventoryLocations
    - `aisle` string: Aisle within the location where the part is stored.
    - `availableQuantity` number, double: Quantity available to be consumed at this location (current minus reserved). Read-only; changes only via stock movements.
    - `bin` string: Bin within the location where the part is stored.
    - `createdAtTime` string: Time when the inventory level record was created.
    - `currentQuantity` number, double: Total physical quantity on hand at this location, equal to the available quantity plus the reserved quantity. Settable only when creating the record, to seed initial stock; thereafter it changes only via stock movements.
    - `isCostTracked` boolean: Whether costing is tracked at this location. Defaults to false; once enabled it cannot be turned back off.
    - `isLowStock` boolean: Whether the available quantity is greater than zero and at or below the reorder threshold.
    - `isNonStock` boolean: Whether the part is tracked at this location without stock management.
    - `maxStockLevel` number, double: Maximum quantity to keep in stock at this location.
    - `minStockLevel` number, double: Minimum quantity to keep in stock at this location.
    - `partSamsara` EntityListPartInventoryPartDefinitionRefTypeResponseBody: Reference to a PartDefinition
      - `id` string, required: The ID of the referenced PartDefinition.
    - `place` EntityListPartInventoryPlaceRefTypeResponseBody: Reference to a Place
      - `id` string, required: The ID of the referenced Place.
    - `reorderQuantity` number, double: Quantity to reorder when stock reaches the reorder threshold.
    - `reorderThreshold` number, double: Available quantity at or below which the part should be reordered at this location.
    - `reservedQuantity` number, double: Quantity reserved against work orders at this location. Read-only; changes only via stock movements.
    - `row` string: Row within the location where the part is stored.
    - `unitCost` ListPartInventoryEntityPartInventoryLocationMoneyTypeResponseBody: Money object
      - `amount` string: Monetary amount as a decimal string in major currency units (e.g. "24.50").
      - `currency` string: ISO 4217 currency code, lowercased (e.g. "usd").
    - `unitOfMeasureType` 'Unknown' | 'Each' | 'Set' | 'Pack' | 'Box' | 'Pound' | 'Kilogram' | 'Ounce' | 'Liter' | 'Milliliter' | 'Gallon' | 'Quart' | 'FluidOunce' | 'Inch' | 'Foot' | 'Meter' | 'Yard' | 'SquareFoot' | 'SquareMeter' | 'Pint' | 'Hundred' | 'Roll': Unit of measure that the quantity fields on this record are expressed in. Surfaced here so the unit of all quantity fields is visible in-response. Valid values: `Unknown`, `Each`, `Set`, `Pack`, `Box`, `Pound`, `Kilogram`, `Ounce`, `Liter`, `Milliliter`, `Gallon`, `Quart`, `FluidOunce`, `Inch`, `Foot`, `Meter`, `Yard`, `SquareFoot`, `SquareMeter`, `Pint`, `Hundred`, `Roll`
    - `updatedAtTime` string: Time when the inventory level record was last updated.
  - `pagination` GoaPaginationResponseResponseBody, required: Pagination parameters.
    - `endCursor` string, required: Cursor identifier representing the last element in the response. This value should be used in conjunction with a subsequent request's 'after' query parameter. This may be an empty string if there are no more pages left to view.
    - `hasNextPage` boolean, required: True if there are more pages of results immediately available after this endCursor.

## Other responses

- `401`: Unauthorized response.
- `404`: Not Found response.
- `405`: Method Not Allowed response.
- `413`: Content Too Large response.
- `429`: Too Many Requests response.
- `500`: Internal Server Error response.
- `501`: Not Implemented response.
- `502`: Bad Gateway response.
- `503`: Service Unavailable response.
- `504`: Gateway Timeout response.
- `default`: Bad Request response.

---

[API](https://skmtc.dev/samsara/apis/samsara-api.md) - [All operations](https://skmtc.dev/samsara/apis/samsara-api/llms.txt) - [OpenAPI document](https://skmtc.dev/samsara/apis/samsara-api/revisions/a9e35d4999be?raw)
