---
title: "Update entities in batch"
method: POST
path: "/catalog/v1/entities/batch/patch"
tags: ["Generic Metadata Entities"]
---

# Update entities in batch

`POST /catalog/v1/entities/batch/patch`

## Request

- Base URL: `https://your-environment.ataccama.one/api`
- URL: `https://your-environment.ataccama.one/api/catalog/v1/entities/batch/patch`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/ataccama/apis/ataccama-one-agentic-data-trust-platform-public-api/docs/catalog/v1/entities/batch/patch/post.ts> (a function with typed inputs; its response is checked against the schema)

Update up to 100 entities in a single request.

Each item must include the entity `urn`; `properties` lists the properties to merge, following the same JSON Merge Patch
([RFC 7396](https://www.rfc-editor.org/rfc/rfc7396.html)) semantics as [Update entity](#tag/generic-metadata-entities/PATCH/catalog/v1/entities/{urn}).
An item without `properties` succeeds without changing its entity.

The request is atomic: either every item succeeds or every item fails. The response never mixes success and failure
outcomes. The `meta` summary therefore always has either `success == total` (and `fail == 0`) or
`fail == total` (and `success == 0`).

Results are returned in the same order as the request items. Each item can carry an optional `id`, a
caller-supplied correlation identifier echoed back in the corresponding result item.

## Request body

- object
  - `data` GenericEntityBatchPatchItem[], required
    - `id` string: Caller-supplied correlation identifier echoed back in the corresponding result item.
    - `urn` string, uri, required: A URN identifying a resource in any realm of the Public API. URNs follow RFC 8141. Format: urn:ata:{tenant}:{realm}:{resource-type}:{uuid} Components: - `urn` — fixed scheme - `ata` — Ataccama namespace - `{tenant}` — tenant identifier from the authentication context - `{realm}` — API realm, for example `catalog` or `reference-data` - `{resource-type}` — resource type within the realm, for example `catalog-item` or `table` - `{uuid}` — UUID (v4 or v7) of the resource Example: urn:ata:acme-corp:reference-data:table:123e4567-e89b-12d3-a456-426614174000.
    - `properties` object: A map of properties to merge into the entity, keyed by property name as defined in the metadata model.

## Response `207`

Multi-status batch outcome. Because patches are atomic, every item in `results` reports the same outcome — all `OK` (with `data`)
on success, or all non-`OK` (with `error`) on failure. `meta.success` therefore equals `meta.total` on success and `0` on failure.

Each result contains the properties changed by any item in the request, not only by its own item. In the example, the
first item changes `abbreviation` and the second changes `domains`, so both results contain `abbreviation` and `domains`.

- object
  - `meta` BatchOperationMeta, required: Summary of a batch operation outcome. Lets clients assess batch health without iterating every item.
    - `total` integer, required: Number of items in the request.
    - `success` integer, required: Number of items with `OK` status.
    - `fail` integer, required: Number of items with non-`OK` status. `success + fail` equals `total`.
  - `results` GenericEntityBatchResultItem[], required
    - `id` string: Echoes the caller-supplied correlation `id` from the corresponding request item, when one was supplied.
    - `status` string, required: @ExtensibleEnum Outcome status. `OK` indicates success; any other value indicates failure and matches the corresponding error `type`.
    - `data` GenericEntity
      - `urn` string, uri, required: A URN identifying a resource in any realm of the Public API. URNs follow RFC 8141. Format: urn:ata:{tenant}:{realm}:{resource-type}:{uuid} Components: - `urn` — fixed scheme - `ata` — Ataccama namespace - `{tenant}` — tenant identifier from the authentication context - `{realm}` — API realm, for example `catalog` or `reference-data` - `{resource-type}` — resource type within the realm, for example `catalog-item` or `table` - `{uuid}` — UUID (v4 or v7) of the resource Example: urn:ata:acme-corp:reference-data:table:123e4567-e89b-12d3-a456-426614174000.
      - `parentUrn` string, uri: A URN identifying a resource in any realm of the Public API. URNs follow RFC 8141. Format: urn:ata:{tenant}:{realm}:{resource-type}:{uuid} Components: - `urn` — fixed scheme - `ata` — Ataccama namespace - `{tenant}` — tenant identifier from the authentication context - `{realm}` — API realm, for example `catalog` or `reference-data` - `{resource-type}` — resource type within the realm, for example `catalog-item` or `table` - `{uuid}` — UUID (v4 or v7) of the resource Example: urn:ata:acme-corp:reference-data:table:123e4567-e89b-12d3-a456-426614174000.
      - `rootSuperType` string, required: The root super type of the entity in the metadata model type hierarchy, for example, `term`.
      - `concreteType` string, required: The concrete (most specific) type of the entity in the metadata model, for example, `businessTerm`.
      - `properties` object: A map of properties defined for the entity in the metadata model. Only the properties you explicitly request through the `properties` query parameter are included. Property names must match the metadata model exactly. Supported property value types are scalars (string, number, Boolean), URN references, arrays of those, or `null`.
      - `effectiveStewardship` EffectiveStewardship: The stewardship that applies to an entity: either assigned directly to the entity or inherited from an ancestor, such as the source of a catalog item. Resolving effective stewardship takes additional processing time, so request it only when you need it.
        - `groupUrn` string, uri, required: A URN identifying a group resource in the IAM API. To find a group's URN, use the Groups endpoints of the IAM API. Format: urn:ata:{tenant}:iam:group:{uuid} Example: urn:ata:acme-corp:iam:group:123e4567-e89b-12d3-a456-426614174000.
        - `originUrn` string, uri, required: A URN identifying a resource in any realm of the Public API. URNs follow RFC 8141. Format: urn:ata:{tenant}:{realm}:{resource-type}:{uuid} Components: - `urn` — fixed scheme - `ata` — Ataccama namespace - `{tenant}` — tenant identifier from the authentication context - `{realm}` — API realm, for example `catalog` or `reference-data` - `{resource-type}` — resource type within the realm, for example `catalog-item` or `table` - `{uuid}` — UUID (v4 or v7) of the resource Example: urn:ata:acme-corp:reference-data:table:123e4567-e89b-12d3-a456-426614174000.
    - `error` ProblemDetail
      - `type` string, required: Error type identifier.
      - `title` string, required: Short, human-readable summary of the problem type.
      - `detail` string, required: Detailed specific explanation of the problem.

## Other responses

- `400`: Bad request. The request parameters or body are invalid.
- `403`: Forbidden. You do not have permission to access the requested resource.
- `404`: Not found. The requested resource does not exist.

---

[API](https://skmtc.dev/ataccama/apis/ataccama-one-agentic-data-trust-platform-public-api.md) - [All operations](https://skmtc.dev/ataccama/apis/ataccama-one-agentic-data-trust-platform-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ataccama/apis/ataccama-one-agentic-data-trust-platform-public-api/revisions/46f16e0487f8?raw)
