Benchling Entity Schema API

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.

Operations 3

GET /entity-schema/items List EntitySchema items #
GET /entity-schema/{entity_schema_id} Get EntitySchema by ID #
GET /entity-schema/{entity_schema_id}/field-definitions/items List SchemaFieldDefinition items #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/benchling-entityschema-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

benchling-entityschema-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  title: Benchling Entity Schema API
  version: 2.0.0
  description: '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.'
servers:
- url: /api/v3
security:
- oAuth: []
- basicApiKeyAuth: []
tags:
- description: '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.'
  name: EntitySchema
  x-bnch-organization: Benchling
paths:
  /entity-schema/items:
    get:
      description: List EntitySchema items.
      operationId: EntitySchema.List
      parameters:
      - $ref: '#/components/parameters/archiveReason.anyOf'
      - $ref: '#/components/parameters/archived.anyOf'
      - $ref: '#/components/parameters/createdAt.gt'
      - $ref: '#/components/parameters/createdAt.gte'
      - $ref: '#/components/parameters/createdAt.lt'
      - $ref: '#/components/parameters/createdAt.lte'
      - $ref: '#/components/parameters/id.anyOf'
      - $ref: '#/components/parameters/modifiedAt.gt'
      - $ref: '#/components/parameters/modifiedAt.gte'
      - $ref: '#/components/parameters/modifiedAt.lt'
      - $ref: '#/components/parameters/modifiedAt.lte'
      - $ref: '#/components/parameters/name.anyOf'
      - $ref: '#/components/parameters/name.anyOf.caseSensitive'
      - $ref: '#/components/parameters/nextToken'
      - $ref: '#/components/parameters/omit'
      - $ref: '#/components/parameters/pageSize'
      - $ref: '#/components/parameters/returning'
      - description: 'Method by which to order results. Valid sorts are: createdAt (created time, oldest first) and modifiedAt (modified time, oldest first). Use :asc or :desc to specify ascending or descending order. Default is modifiedAt:desc.'
        in: query
        name: sort
        schema:
          default: modifiedAt:desc
          enum:
          - createdAt:asc
          - createdAt:desc
          - modifiedAt:asc
          - modifiedAt:desc
          type: string
      - description: Set to true to access beta operations via /api/v3.
        in: header
        name: EARLY-ACCESS
        required: false
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntitySchemaPaginatedList'
          description: OK
          headers: {}
        '400':
          $ref: '#/components/responses/BadRequest'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: List EntitySchema items
      tags:
      - EntitySchema
      x-bnch-rate-limit-tier: 4
  /entity-schema/{entity_schema_id}:
    get:
      description: Get a single EntitySchema by ID.
      operationId: EntitySchema.Get
      parameters:
      - description: ID of the EntitySchema.
        in: path
        name: entity_schema_id
        required: true
        schema:
          type: string
      - $ref: '#/components/parameters/returning'
      - $ref: '#/components/parameters/omit'
      - description: Set to true to access beta operations via /api/v3.
        in: header
        name: EARLY-ACCESS
        required: false
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntitySchema'
          description: OK
          headers: {}
        '400':
          $ref: '#/components/responses/BadRequest'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get EntitySchema by ID
      tags:
      - EntitySchema
      x-bnch-rate-limit-tier: 5
  /entity-schema/{entity_schema_id}/field-definitions/items:
    get:
      description: List SchemaFieldDefinition items.
      operationId: EntitySchema.fieldDefinitions.List
      parameters:
      - description: ID of the EntitySchema.
        in: path
        name: entity_schema_id
        required: true
        schema:
          type: string
      - description: Set to true to access beta operations via /api/v3.
        in: header
        name: EARLY-ACCESS
        required: false
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SchemaFieldDefinitionUnpaginatedList'
          description: OK
          headers: {}
        '400':
          $ref: '#/components/responses/BadRequest'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: List SchemaFieldDefinition items
      tags:
      - EntitySchema
      x-bnch-rate-limit-tier: 4
components:
  schemas:
    CustomEntitySchemaRef:
      properties:
        __typename:
          type: string
        id:
          format: api_id
          type: string
      type: object
    AssayRequestLinkFieldDefinition:
      description: A schema field definition for linking to assay requests.
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isRequired:
          type: boolean
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    RunSchemaRef:
      properties:
        __typename:
          type: string
        id:
          format: api_id
          type: string
      type: object
    LongTextFieldDefinition:
      description: A long text field definition for multi-line text values with no length restrictions.
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isRequired:
          type: boolean
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    ResultSchemaRef:
      properties:
        __typename:
          type: string
        id:
          format: api_id
          type: string
      type: object
    CustomEntityLinkFieldDefinition:
      description: A schema field definition for linking to custom entities.
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isParent:
          description: 'Means the link is from a child to a parent custom entity. Important for the registry''s lot-numbering

            functionality.'
          type: boolean
        isRequired:
          type: boolean
        linkDefinition:
          oneOf:
          - $ref: '#/components/schemas/CustomEntitySchemaRef'
          - type: 'null'
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    TranslationLinkFieldDefinition:
      description: A schema field definition for linking to translations (AA sequences created from RNA).
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isParent:
          description: 'Means the link is from a child to a parent AA sequence. Important for the registry''s lot-numbering

            functionality.'
          type: boolean
        isRequired:
          type: boolean
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    MixtureLinkFieldDefinition:
      description: A schema field definition for linking to mixtures.
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isParent:
          description: 'Means the link is from a child to a parent mixture. Important for the registry''s lot-numbering

            functionality.'
          type: boolean
        isRequired:
          type: boolean
        linkDefinition:
          oneOf:
          - $ref: '#/components/schemas/MixtureSchemaRef'
          - type: 'null'
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    DropdownRef:
      properties:
        __typename:
          type: string
        id:
          format: api_id
          type: string
      type: object
    BaseFieldDefinition:
      description: 'A basic schema field definition for primitive data types. Used for fields with types like TEXT,

        INTEGER, FLOAT, BOOLEAN, DATE, DATETIME, JSON, and LONG_TEXT. Each field has a user-facing

        `name` and a `systemName` for warehouse/API access. Fields can be archived when no longer needed. For fields

        that link to other objects, use `SchemaLinkFieldDefinition`; for dropdown selections, use

        `DropdownLinkFieldDefinition`.'
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          description: Determines whether multiple values are allowed
          type: boolean
        isRequired:
          description: Determines whether values must be provided
          type: boolean
        name:
          type: string
        systemName:
          type: string
        type:
          enum:
          - AA_PART_LINK
          - AA_SEQUENCE_LINK
          - ASSAY_REQUEST_LINK
          - ASSAY_RESULT_LINK
          - ASSAY_RUN_LINK
          - BATCH_LINK
          - BLOB_LINK
          - BOOLEAN
          - CUSTOM_ENTITY_LINK
          - DATE
          - DATETIME
          - DNA_SEQUENCE_LINK
          - ENTITY_LINK
          - ENTRY_LINK
          - FLOAT
          - INTEGER
          - JSON
          - LONG_TEXT
          - MIXTURE_LINK
          - MOLECULE_LINK
          - BASE_MOLECULE_LINK
          - PART_LINK
          - SAMPLE_LINK
          - DROPDOWN
          - STORAGE_LINK
          - TEXT
          - TRANSCRIPTION_LINK
          - TRANSLATION_LINK
          type: string
      type: object
    DnaOligoSchemaRef:
      properties:
        __typename:
          type: string
        id:
          format: api_id
          type: string
      type: object
    OligoDuplexLinkFieldDefinition:
      description: A schema field definition for linking to Oligo Duplexes.
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isParent:
          description: 'Means the link is from a child to a parent Oligo Duplex. Important for the registry''s lot-numbering

            functionality.'
          type: boolean
        isRequired:
          type: boolean
        linkDefinition:
          oneOf:
          - $ref: '#/components/schemas/OligoDuplexSchemaRef'
          - type: 'null'
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    DropdownLinkFieldDefinition:
      description: 'A schema field definition that links to a dropdown for value selection. The `linkDefinition` field

        references the `Dropdown` configuration that defines the available options. When `isMulti`

        is true, users can select multiple dropdown options for a single field value. The dropdown

        provides controlled vocabulary for consistent data entry across the organization.'
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isRequired:
          type: boolean
        linkDefinition:
          $ref: '#/components/schemas/DropdownRef'
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    EntryLinkFieldDefinition:
      description: A schema field definition for linking to notebook entries.
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isRequired:
          type: boolean
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    EntitySchema:
      description: '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.'
      properties:
        __typename:
          type: string
        archiveReason:
          description: Reason the EntitySchema was archived
          type:
          - 'null'
          - string
        archived:
          description: If the EntitySchema is archived
          type: boolean
        availableRegistrationNamingOptions:
          description: Naming strategies allowed when registering entities of this schema
          items:
            enum:
            - NEW_IDS
            - IDS_FROM_NAMES
            - DELETE_NAMES
            - SET_FROM_NAME_PARTS
            - REPLACE_NAMES_FROM_PARTS
            - KEEP_NAMES
            - REPLACE_ID_AND_NAME_FROM_PARTS
            type: string
          type: array
        constraint:
          oneOf:
          - $ref: '#/components/schemas/Constraint'
          - type: 'null'
        containableType:
          enum:
          - NONE
          - ENTITY
          - BATCH
          type: string
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        description:
          type: string
        fieldDefinitions:
          format: uri
          type: string
        id:
          type: string
        modifiedAt:
          description: DateTime the Entity Schema was last modified
          format: datetime
          type: string
        name:
          type: string
        prefix:
          type: string
        registry:
          $ref: '#/components/schemas/RegistryRef'
          description: Registry the EntitySchema is in
        type:
          type: string
      type: object
    SchemaLinkFieldDefinition:
      description: 'A schema field definition for link types that reference other Benchling objects. Extends

        basic field properties with link-specific constraints.'
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          description: determines whether multiple values are allowed
          type: boolean
        isRequired:
          type: boolean
        name:
          type: string
        schemaId:
          description: limits links to entities of a specific schema
          type:
          - 'null'
          - string
        systemName:
          type: string
        type:
          description: indicates the kind of object being linked
          enum:
          - AA_PART_LINK
          - AA_SEQUENCE_LINK
          - ASSAY_REQUEST_LINK
          - ASSAY_RESULT_LINK
          - ASSAY_RUN_LINK
          - BATCH_LINK
          - BLOB_LINK
          - BOOLEAN
          - CUSTOM_ENTITY_LINK
          - DATE
          - DATETIME
          - DNA_SEQUENCE_LINK
          - ENTITY_LINK
          - ENTRY_LINK
          - FLOAT
          - INTEGER
          - JSON
          - LONG_TEXT
          - MIXTURE_LINK
          - MOLECULE_LINK
          - BASE_MOLECULE_LINK
          - PART_LINK
          - SAMPLE_LINK
          - DROPDOWN
          - STORAGE_LINK
          - TEXT
          - TRANSCRIPTION_LINK
          - TRANSLATION_LINK
          type: string
      type: object
    InternalServerError:
      properties:
        detail:
          type:
          - 'null'
          - string
          - object
        errorId:
          type: string
        instance:
          type: string
        status:
          type: integer
        title:
          type:
          - 'null'
          - string
        type:
          type: string
      required:
      - type
      - title
      - detail
      - status
      - instance
      type: object
    RnaOligoLinkFieldDefinition:
      description: A schema field definition for linking to RNA Oligos.
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isParent:
          description: 'Means the link is from a child to a parent RNA Oligo. Important for the registry''s lot-numbering

            functionality.'
          type: boolean
        isRequired:
          type: boolean
        linkDefinition:
          $ref: '#/components/schemas/RnaOligoSchemaRef'
          description: The linked item must be of this schema. This is required because we do not allow linking to a generic RNA Oligo.
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    AaSequenceSchemaRef:
      properties:
        __typename:
          type: string
        id:
          format: api_id
          type: string
      type: object
    StorableLinkFieldDefinition:
      description: A schema field definition for linking to storable inventory items.
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isRequired:
          type: boolean
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    RnaSequenceLinkFieldDefinition:
      description: A schema field definition for linking to RNA sequences.
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isParent:
          description: 'Means the link is from a child to a parent RNA sequence. Important for the registry''s lot-numbering

            functionality.'
          type: boolean
        isRequired:
          type: boolean
        linkDefinition:
          $ref: '#/components/schemas/RnaSequenceSchemaRef'
          description: The linked item must be of this schema. This is required because we do not allow linking to a generic RNA Sequence.
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    FloatFieldDefinition:
      description: A float field definition for decimal number values. Supports numeric constraints (min/max), display precision, and units.
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        displayPrecision:
          type:
          - 'null'
          - integer
        id:
          type: string
        isRequired:
          type: boolean
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        numericMax:
          type:
          - 'null'
          - number
        numericMin:
          type:
          - 'null'
          - number
        systemName:
          type: string
        unit:
          oneOf:
          - $ref: '#/components/schemas/UnitRef'
          - type: 'null'
      type: object
    DnaSequenceLinkFieldDefinition:
      description: A schema field definition for linking to DNA sequences.
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isParent:
          description: 'Means the link is from a child to a parent DNA sequence. Important for the registry''s lot-numbering

            functionality.'
          type: boolean
        isRequired:
          type: boolean
        linkDefinition:
          oneOf:
          - $ref: '#/components/schemas/DnaSequenceSchemaRef'
          - type: 'null'
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    FieldsetRef:
      properties:
        __typename:
          type: string
        id:
          format: api_id
          type: string
      type: object
    RegistryRef:
      properties:
        __typename:
          type: string
        id:
          format: api_id
          type: string
      type: object
    SystemCategoryLinkFieldDefinition:
      description: A schema field definition for linking to entities that implement a system category (static schema interface).
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isRequired:
          type: boolean
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    MoleculeLinkFieldDefinition:
      description: A schema field definition for linking to molecules.
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isParent:
          description: 'Means the link is from a child to a parent molecule. Important for the registry''s lot-numbering

            functionality.'
          type: boolean
        isRequired:
          type: boolean
        linkDefinition:
          oneOf:
          - $ref: '#/components/schemas/MoleculeSchemaRef'
          - type: 'null'
        modifiedAt:
          format: datetime
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
      type: object
    FieldsetLinkFieldDefinition:
      description: A schema field definition for linking to entities that implement a fieldset (custom schema interface).
      properties:
        __typename:
          type: string
        archiveReason:
          type:
          - 'null'
          - string
        archived:
          type: boolean
        createdAt:
          format: datetime
          type:
          - 'null'
          - string
        derivationType:
          enum:
          - DIRECT
          - COMPUTED
          - SNAPSHOT
          type: string
        description:
          type:
          - 'null'
          - string
        id:
          type: string
        isMulti:
          type: boolean
        isParent:
          description: 'Means the link is from a child to a parent entity. Important for the registry''s lot-numbering

            functionality.'
          type: boolean
        isRequired:
          type: boolean
        linkDefinition:
          $ref: '#/components/schemas/FieldsetRef'
        modifiedAt:
          format: datetime
          type:
          - 'null'
     

# --- truncated at 32 KB (62 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/benchling/refs/heads/main/openapi/benchling-entityschema-api-openapi.yml