---
title: "Get batch inventory status"
method: GET
path: "/availability/v1/inventory/batch/{batchId}/status"
tags: ["Batch operations"]
---

# Get batch inventory status

`GET /availability/v1/inventory/batch/{batchId}/status`

Retrieves the current processing status and progress information for a batch inventory job. Use this endpoint to poll the batch status and track processing progress.

>ℹ️ This feature is in early access, which means that we are working to improve it. If you want to use this feature, please contact our [Support Center](https://support.vtex.com/hc/en-us/requests).

This endpoint is part of the Batch operations section for high-throughput [inventory updates](https://help.vtex.com/en/docs/tutorials/updating-the-quantity-of-items-in-inventory). Learn more about [inventory management at VTEX](https://help.vtex.com/en/docs/tutorials/managing-stock-items).

## Permissions

Any user or [API key](https://developers.vtex.com/docs/guides/authentication-overview#api-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise, they will receive a status code `403` error. These are the applicable resources for this endpoint:

| **Product** | **Category** | **Resource** |
| --------------- | ----------------- | ----------------- |
| Logistics | Logistics access | **Logistics - Full access** |

You can [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) with that resource or use one of the following [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy):

| **Role** | **Resource** |
| --------------- | ----------------- |
| Logistics - Full access | Logistics - Full access |
| OMS - Full access | Logistics - Full access |

>❗ Assigning a [predefined role](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) to users or API keys usually grants permission to multiple [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3). If some of these permissions are not necessary, consider creating a custom role instead. For more information regarding security, see [Best practices for using API keys](https://help.vtex.com/en/tutorial/best-practices-api-keys--7b6nD1VMHa49aI5brlOvJm).

To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication-overview#machine-authentication).

## Path parameters

- `batchId` string, uuid, required

## Headers

- `Accept` string, required

## Response `200`

OK

- object — Batch inventory status details.
  - `batchId` string, uuid, required — Unique identifier for the batch inventory job.
  - `status` 'AWAITING_UPLOAD' | 'QUEUED' | 'PROCESSING' | 'COMPLETED' | 'COMPLETED_WITH_ERRORS' | 'FAILED' | 'EXPIRED', required — Current processing status of the batch inventory. Possible values: - `AWAITING_UPLOAD`: Batch created, waiting for CSV upload. - `QUEUED`: Upload committed, waiting to begin processing. - `PROCESSING`: Batch is currently being processed (includes mid stages: `INGESTING`, `CLASSIFYING`). - `COMPLETED`: All rows processed successfully. - `COMPLETED_WITH_ERRORS`: Processing finished with some row errors. - `FAILED`: Processing failed due to validation or system errors. - `EXPIRED`: Batch metadata has expired (default: 30 minutes).
  - `rowCount` integer, required — Total number of rows in the batch.
  - `processedCount` integer, required — Number of rows processed so far.
  - `errorCount` integer, required — Number of rows with errors.
  - `amountCompleted` integer, required — Percentage of batch inventory completed.
  - `createdAt` string, date-time, required — Batch inventory creation timestamp.
  - `startedAt` string, date-time, nullable — Batch inventory processing start timestamp.
  - `stages` object, nullable — Chunk-level stage breakdown. May be `null` while the batch inventory is in early stages.
    - `ingestedChunks` integer, required — Number of chunks that completed the ingestion stage for the batch inventory.
    - `classifiedChunks` integer, required — Number of chunks that completed the classification stage.
    - `processedChunks` integer, required — Number of chunks that completed the processing stage.
    - `notifiedChunks` integer, required — Number of chunks that completed the notification stage.
    - `totalChunks` integer, required — Total number of chunks in the batch.
  - `summary` object, nullable — Processing outcome summary. May be `null` while the batch is in early stages.
    - `insertCount` integer, required — Number of new inventory rows inserted.
    - `updateCount` integer, required — Number of existing rows updated.
    - `noopCount` integer, required — Number of rows with no changes needed.
    - `conflictCount` integer, required — Number of rows that encountered Compare-And-Set (CAS) conflicts.
    - `skippedDueApiUpdateCount` integer, required — Number of rows skipped as they were recently modified using the individual item API.
    - `perItemRoutedCount` integer, required — Number of rows routed to per-item processing.
    - `dlqEventsCount` integer, required — Number of events sent to the Dead Letter Queue (DLQ).

## Other responses

- `400` — Bad Request Invalid batch ID format.
- `401` — Unauthorized Missing or invalid authentication.
- `403` — Forbidden Insufficient permissions.
- `404` — Not Found Batch not found.
- `500` — Internal Server Error Unexpected error occurred while retrieving the batch status.

---

[API](https://skmtc.net/vtex/apis/logistics-api.md) · [All operations](https://skmtc.net/vtex/apis/logistics-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/vtex/logistics-api/revisions/c08af805d8b3/schema)
