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

# Create entities in batch

`POST /catalog/v1/entities/batch/create`

## Request

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

Create up to 100 entities in a single request.

Each item has the same fields as [Create entity](#tag/generic-metadata-entities/POST/catalog/v1/entities), as well as the optional correlation `id`.

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` GenericEntityBatchCreateItem[], required
    - `concreteType` string, required: The concrete (most specific) type of the entity in the metadata model, for example, `businessTerm`.
    - `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.
    - `parentProperty` string, required: Name of the property on the parent that holds child entities of this type, as defined in the metadata model, for example, `terms`.
    - `properties` object: A map of properties to set on the new entity, keyed by property name as defined in the metadata model.
    - `id` string: Caller-supplied correlation identifier echoed back in the corresponding result item.

## Response `207`

Multi-status batch outcome. Because creates 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.

- 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)
