---
title: "Get EntitySchema by ID"
method: GET
path: "/api/v3/entity-schema/{entity_schema_id}"
tags: ["Entity Schema"]
---

# Get EntitySchema by ID

`GET /api/v3/entity-schema/{entity_schema_id}`

## Request

- Base URL: `https://{tenant_name}.benchling.com`
- URL: `https://{tenant_name}.benchling.com/api/v3/entity-schema/{entity_schema_id}`
- Auth: HTTP bearer

Get a single EntitySchema by ID.

## Path parameters

- `entity_schema_id` string, required

## Query parameters

- `returning` string[]
- `omit` string[]

## Headers

- `EARLY-ACCESS` string

## Response `200`

OK

- EntitySchema: Defines the structure and behavior for a category of registered entities in Benchling. EntitySchemas specify the field definitions (see `fieldDefinitions` and `SchemaFieldDefinition`) that determine what data can be stored on entities of this type. Each schema belongs to a Registry (see `registry`) and has a prefix used for generating entity IDs. Schemas can enforce uniqueness constraints (see `constraint`) and configure whether entities can be stored in containers (see `containableType`). Access is controlled through collaborations (see `Collaboration`). Common entity types include DNA sequences, proteins, molecules, and custom entities, determined by the schema's type field.
  - `__typename` string
  - `archiveReason` string, nullable: Reason the EntitySchema was archived
  - `archived` boolean: If the EntitySchema is archived
  - `availableRegistrationNamingOptions` EntitySchemaAvailableRegistrationNamingOptionsItems[]: Naming strategies allowed when registering entities of this schema
  - `constraint` Constraint: Defines uniqueness requirements for entities within a schema. Constraints ensure that registered entities have unique values across specified fields (see `fieldDefinitionNames`) or unique domain-specific properties (see `TypeSpecificConstraint`). The hasUniqueResidues field is a legacy indicator for sequence uniqueness.
    - `__typename` string
    - `fieldDefinitionNames` string[], nullable
    - `hasUniqueResidues` boolean, nullable
  - `containableType` 'NONE' | 'ENTITY' | 'BATCH'
  - `createdAt` string, datetime, nullable
  - `description` string
  - `fieldDefinitions` string, uri
  - `id` string
  - `modifiedAt` string, datetime: DateTime the Entity Schema was last modified
  - `name` string
  - `prefix` string
  - `registry` RegistryRef
    - `__typename` string
    - `id` string, api_id
  - `type` string
  - `validationRules` string, uri

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found
- `429`: Too Many Requests
- `500`: Internal Server Error

---

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