Benchling Matrix Plate Schema API

Defines the structure and constraints for a category of MatrixPlates in Benchling's inventory system. A MatrixPlateSchema specifies the grid dimensions (height and width), an optional ContainerSchema for tubes that can be inserted, and custom field definitions. Unlike WellPlateSchema where wells are permanently fixed, MatrixPlateSchema defines plates where containers can be inserted into and removed from positions. Examples include tube racks and sample storage matrices. Each schema is associated with a Registry and given a prefix for generating display IDs.

Operations 9

POST /matrix-plate-schema Create MatrixPlateSchema #
GET /matrix-plate-schema/items List MatrixPlateSchema items #
GET /matrix-plate-schema/{matrix_plate_schema_id} Get MatrixPlateSchema by ID #
PATCH /matrix-plate-schema/{matrix_plate_schema_id} Update MatrixPlateSchema #
GET /matrix-plate-schema/{matrix_plate_schema_id}/field-definitions/items List SchemaFieldDefinition items #
POST /matrix-plate-schema:batch-create Batch create MatrixPlateSchema #
PATCH /matrix-plate-schema:batch-update Batch update MatrixPlateSchema #
POST /matrix-plate-schema:bulk-create Bulk create MatrixPlateSchema #
PATCH /matrix-plate-schema:bulk-update Bulk update MatrixPlateSchema #

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-matrixplateschema-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-matrixplateschema-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 Matrix Plate Schema API
  version: 2.0.0
  description: 'Defines the structure and constraints for a category of MatrixPlates in Benchling''s

    inventory system. A MatrixPlateSchema specifies the grid dimensions (height and width),

    an optional ContainerSchema for tubes that can be inserted, and custom field definitions.

    Unlike WellPlateSchema where wells are permanently fixed, MatrixPlateSchema defines

    plates where containers can be inserted into and removed from positions. Examples include

    tube racks and sample storage matrices. Each schema is associated with a Registry

    and given a prefix for generating display IDs.'
servers:
- url: /api/v3
security:
- oAuth: []
- basicApiKeyAuth: []
tags:
- description: 'Defines the structure and constraints for a category of MatrixPlates in Benchling''s

    inventory system. A MatrixPlateSchema specifies the grid dimensions (height and width),

    an optional ContainerSchema for tubes that can be inserted, and custom field definitions.

    Unlike WellPlateSchema where wells are permanently fixed, MatrixPlateSchema defines

    plates where containers can be inserted into and removed from positions. Examples include

    tube racks and sample storage matrices. Each schema is associated with a Registry

    and given a prefix for generating display IDs.'
  name: MatrixPlateSchema
  x-bnch-organization: Benchling
paths:
  /matrix-plate-schema:
    post:
      description: Create MatrixPlateSchema.
      operationId: MatrixPlateSchema.Create
      parameters:
      - description: Set to true to access beta operations via /api/v3.
        in: header
        name: EARLY-ACCESS
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateMatrixPlateSchemaInput'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatrixPlateSchema'
          description: Created
        '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: Create MatrixPlateSchema
      tags:
      - MatrixPlateSchema
      x-bnch-rate-limit-tier: 4
  /matrix-plate-schema/items:
    get:
      description: List MatrixPlateSchema items.
      operationId: MatrixPlateSchema.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/MatrixPlateSchemaPaginatedList'
          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 MatrixPlateSchema items
      tags:
      - MatrixPlateSchema
      x-bnch-rate-limit-tier: 4
  /matrix-plate-schema/{matrix_plate_schema_id}:
    get:
      description: Get a single MatrixPlateSchema by ID.
      operationId: MatrixPlateSchema.Get
      parameters:
      - description: ID of the MatrixPlateSchema.
        in: path
        name: matrix_plate_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/MatrixPlateSchema'
          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 MatrixPlateSchema by ID
      tags:
      - MatrixPlateSchema
      x-bnch-rate-limit-tier: 5
    patch:
      description: Update MatrixPlateSchema.
      operationId: MatrixPlateSchema.Update
      parameters:
      - description: ID of the MatrixPlateSchema.
        in: path
        name: matrix_plate_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
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateMatrixPlateSchemaInput'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatrixPlateSchema'
          description: OK
        '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: Update MatrixPlateSchema
      tags:
      - MatrixPlateSchema
      x-bnch-rate-limit-tier: 4
  /matrix-plate-schema/{matrix_plate_schema_id}/field-definitions/items:
    get:
      description: List SchemaFieldDefinition items.
      operationId: MatrixPlateSchema.fieldDefinitions.List
      parameters:
      - description: ID of the MatrixPlateSchema.
        in: path
        name: matrix_plate_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:
      - MatrixPlateSchema
      x-bnch-rate-limit-tier: 4
  /matrix-plate-schema:batch-create:
    post:
      description: Batch create MatrixPlateSchema synchronously in one transaction. Maximum 25 items per request.
      operationId: MatrixPlateSchema.BatchCreate
      parameters:
      - description: Set to true to access beta operations via /api/v3.
        in: header
        name: EARLY-ACCESS
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              additionalProperties: false
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/CreateMatrixPlateSchemaInput'
                  maxItems: 25
                  minItems: 1
                  type: array
              required:
              - items
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                additionalProperties: false
                properties:
                  items:
                    items:
                      $ref: '#/components/schemas/MatrixPlateSchema'
                    type: array
                required:
                - items
                type: object
          description: Created
        '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: Batch create MatrixPlateSchema
      tags:
      - MatrixPlateSchema
      x-bnch-rate-limit-tier: 3
  /matrix-plate-schema:batch-update:
    patch:
      description: Batch update MatrixPlateSchema synchronously in one transaction. Maximum 25 items per request.
      operationId: MatrixPlateSchema.BatchUpdate
      parameters:
      - description: Set to true to access beta operations via /api/v3.
        in: header
        name: EARLY-ACCESS
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              additionalProperties: false
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/UpdateMatrixPlateSchemaInputWithPathParams'
                  maxItems: 25
                  minItems: 1
                  type: array
              required:
              - items
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                additionalProperties: false
                properties:
                  items:
                    items:
                      $ref: '#/components/schemas/MatrixPlateSchema'
                    type: array
                required:
                - items
                type: object
          description: OK
        '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: Batch update MatrixPlateSchema
      tags:
      - MatrixPlateSchema
      x-bnch-rate-limit-tier: 3
  /matrix-plate-schema:bulk-create:
    post:
      description: Bulk create MatrixPlateSchema.
      operationId: MatrixPlateSchema.BulkCreate
      parameters:
      - description: Set to true to access beta operations via /api/v3.
        in: header
        name: EARLY-ACCESS
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkImport'
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncTaskLink'
          description: Task started
        '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: Bulk create MatrixPlateSchema
      tags:
      - MatrixPlateSchema
      x-bnch-rate-limit-tier: 2
  /matrix-plate-schema:bulk-update:
    patch:
      description: Bulk update MatrixPlateSchema.
      operationId: MatrixPlateSchema.BulkUpdate
      parameters:
      - description: Set to true to access beta operations via /api/v3.
        in: header
        name: EARLY-ACCESS
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkImport'
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncTaskLink'
          description: Task started
        '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: Bulk update MatrixPlateSchema
      tags:
      - MatrixPlateSchema
      x-bnch-rate-limit-tier: 2
components:
  schemas:
    CustomEntitySchemaRef:
      properties:
        __typename:
          type: string
        id:
          format: api_id
          type: string
      type: object
    CreateDnaSequenceLinkFieldDefinitionInput:
      additionalProperties: false
      properties:
        description:
          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
        linkDefinitionId:
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
        type:
          enum:
          - DNA_SEQUENCE_LINK
          type: string
      required:
      - name
      - systemName
      - isRequired
      - type
      - isMulti
      - linkDefinitionId
      type: object
    CreateDateFieldDefinitionInput:
      additionalProperties: false
      properties:
        description:
          type: string
        isRequired:
          type: boolean
        name:
          type: string
        systemName:
          type: string
        type:
          enum:
          - DATE
          type: string
      required:
      - name
      - systemName
      - isRequired
      - type
      type: object
    CreateFloatFieldDefinitionInput:
      additionalProperties: false
      properties:
        description:
          type: string
        displayPrecision:
          type: integer
        isRequired:
          type: boolean
        name:
          type: string
        numericMax:
          type: number
        numericMin:
          type: number
        systemName:
          type: string
        type:
          enum:
          - FLOAT
          type: string
        unitId:
          type: string
      required:
      - name
      - systemName
      - isRequired
      - type
      type: object
    CreateDnaOligoLinkFieldDefinitionInput:
      additionalProperties: false
      properties:
        description:
          type: string
        isMulti:
          type: boolean
        isParent:
          description: 'Means the link is from a child to a parent DNA Oligo. Important for the registry''s lot-numbering

            functionality.'
          type: boolean
        isRequired:
          type: boolean
        linkDefinitionId:
          type: string
        name:
          type: string
        systemName:
          type: string
        type:
          enum:
          - DNA_OLIGO_LINK
          type: string
      required:
      - name
      - systemName
      - isRequired
      - type
      - isMulti
      - linkDefinitionId
      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
    CreateBooleanFieldDefinitionInput:
      additionalProperties: false
      properties:
        description:
          type: string
        isRequired:
          type: boolean
        name:
          type: string
        systemName:
          type: string
        type:
          enum:
          - BOOLEAN
          type: string
      required:
      - name
      - systemName
      - isRequired
      - type
      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
    UpdateMatrixPlateSchemaInputWithPathParams:
      additionalProperties: false
      properties:
        archiveReason:
          description: Why the schema was archived.
          type: string
        archived:
          description: Whether the schema is archived.
          type: boolean
        containerSchemaId:
          description: The API ID of the container schema constraining what types of containers can be inserted into plates of this type.
          type:
          - 'null'
          - string
        description:
          description: Updated description. When provided, must be at most 1000 characters.
          type: string
        displayName:
          deprecated: true
          description: Deprecated. Use name instead.
          type: string
        height:
          description: The number of rows in the grid layout.
          type: integer
        id:
          description: The API ID of the schema to update. The schema must exist and be accessible.
          type: string
        name:
          description: Updated user-facing name. When provided, must be non-empty after stripping whitespace, at most 255 characters, and unique within the organization.
          type: string
        prefix:
          description: The prefix used for auto-generating barcodes for inventory items of this schema. Must be unique within the registry and cannot end in a digit.
          type: string
        systemName:
          description: Updated SQL identifier for the warehouse table name. When provided, must match the pattern [a-z_][a-z0-9_$]*, cannot be a reserved table name, cannot start with 'bnch$', and must be unique within the organization.
          type: string
        width:
          description: The number of columns in the grid layout.
          type: integer
      required:
      - id
      type: object
    ResultSchemaRef:
      properties:
        __typename:
          type: string
        id:
          format: api_id
          type: string
      type: object
    MatrixPlateSchemaPaginatedList:
      additionalProperties: false
      properties:
        items:
          items:
            $ref: '#/components/schemas/MatrixPlateSchema'
          type: array
        nextToken:
          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
    CreateRnaSequenceLinkFieldDefinitionInput:
      additionalProperties: false
      properties:
        description:
          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
        linkDefinitionId:
          type: string
        name:
          type: string
        systemName:
          type: string
        type:
          enum:
          - RNA_SEQUENCE_LINK
          type: string
      required:
      - name
      - systemName
      - isRequired
      - type
      - isMulti
      - linkDefinitionId
      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
    CreateCustomEntityLinkFieldDefinitionInput:
      additionalProperties: false
      properties:
        description:
          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
        linkDefinitionId:
          type:
          - 'null'
          - string
        name:
          type: string
        systemName:
          type: string
        type:
          enum:
          - CUSTOM_ENTITY_LINK
          type: string
      required:
      - name
      - systemName
      - isRequired
      - type
      - isMulti
      - linkDefinitionId
      type: object
    CreateIntegerFieldDefinitionInput:
      additionalProperties: false
      properties:
        description:
          type: string
        isRequired:
          type: boolean
        name:
          type: string
        numericMax:
          type: number
        numericMin:
          type: number
        systemName:
          type: string
        type:
          enum:
          - INTEGER
          type: string
        unitId:
          type: string
      required:
      - name
      - systemName
      - isRequired
      - type
      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 

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