---
title: "Bulk Validate Entities"
method: POST
path: "/v3/entities/bulk-validate"
tags: ["Entity Curation"]
---

# Bulk Validate Entities

`POST /v3/entities/bulk-validate`

## Query parameters

- `bucket` string

## Request body

- BulkValidateEntitiesRequestV3 — Request body for `POST /v3/entities/bulk-validate`.
  - `entityIDs` string[], required — The `ent_...` IDs to transition. Must be non-empty.
  - `status` 'approved' | 'rejected', required — Terminal status to apply to every entity.

## Response `200`

The request has succeeded.

- BulkValidateEntitiesResponseV3 — `200` response for `POST /v3/entities/bulk-validate`.
  - `results` BulkValidateRowResultV3[], required — Per-row outcomes, in request order.
    - `entityID` string, required — The `ent_...` ID from the request.
    - `outcome` 'validated' | 'skipped' | 'rejected-row', required — `validated` (transition applied), `skipped` (not found or not authorized), or `rejected-row` (the transition itself was illegal, e.g. already terminal).
    - `reason` string — Explanation for a `skipped` or `rejected-row` outcome.
  - `summary` BulkValidateSummaryV3, required — Per-outcome tally across a bulk-validate batch.
    - `validated` integer, required — Rows whose transition was applied.
    - `skipped` integer, required — Rows skipped (not found / not authorized).
    - `rejectedRow` integer, required — Rows whose transition was illegal.

## Changes

- **2026-08-17** `a6e4624117c6` — 1 info
  - added the new optional `query` request parameter `bucket`
- **2026-06-17** `d7092283f192` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/bem-team/apis/bem-api/changes/v3/entities/bulk-validate/post.md)

---

[API](https://skmtc.dev/bem-team/apis/bem-api.md) · [All operations](https://skmtc.dev/bem-team/apis/bem-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/bem-team/bem-api/revisions/a6e4624117c6/schema)
