Benchling Well Plate Schema API

Defines the structure and constraints for a category of WellPlates in Benchling's inventory system. A WellPlateSchema specifies the grid dimensions (height and width) determining how many wells the plate has, and requires a ContainerSchema that defines the well properties (volume capacity, custom fields, etc.). Custom field definitions allow capturing plate-level metadata beyond individual well data. Each WellPlateSchema is associated with a Registry and has a prefix for generating display IDs and barcodes. Examples include "96-Well PCR Plate", "384-Well Assay Plate", or organization-specific plate formats. Unlike MatrixPlateSchema which defines tube rack formats with removable containers, WellPlateSchema is for fixed-well plates where wells are permanent.

Operations 9

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

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

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

    determining how many wells the plate has, and requires a ContainerSchema that defines

    the well properties (volume capacity, custom fields, etc.). Custom field definitions

    allow capturing plate-level metadata beyond individual well data. Each WellPlateSchema

    is associated with a Registry and has a prefix for generating display IDs and barcodes.

    Examples include "96-Well PCR Plate", "384-Well Assay Plate", or organization-specific

    plate formats. Unlike MatrixPlateSchema which defines tube rack formats with removable

    containers, WellPlateSchema is for fixed-well plates where wells are permanent.'
servers:
- url: /api/v3
security:
- oAuth: []
- basicApiKeyAuth: []
tags:
- description: 'Defines the structure and constraints for a category of WellPlates in Benchling''s

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

    determining how many wells the plate has, and requires a ContainerSchema that defines

    the well properties (volume capacity, custom fields, etc.). Custom field definitions

    allow capturing plate-level metadata beyond individual well data. Each WellPlateSchema

    is associated with a Registry and has a prefix for generating display IDs and barcodes.

    Examples include "96-Well PCR Plate", "384-Well Assay Plate", or organization-specific

    plate formats. Unlike MatrixPlateSchema which defines tube rack formats with removable

    containers, WellPlateSchema is for fixed-well plates where wells are permanent.'
  name: WellPlateSchema
  x-bnch-organization: Benchling
paths:
  /well-plate-schema:
    post:
      description: Create WellPlateSchema.
      operationId: WellPlateSchema.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/CreateWellPlateSchemaInput'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WellPlateSchema'
          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 WellPlateSchema
      tags:
      - WellPlateSchema
      x-bnch-rate-limit-tier: 4
  /well-plate-schema/items:
    get:
      description: List WellPlateSchema items.
      operationId: WellPlateSchema.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/WellPlateSchemaPaginatedList'
          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 WellPlateSchema items
      tags:
      - WellPlateSchema
      x-bnch-rate-limit-tier: 4
  /well-plate-schema/{well_plate_schema_id}:
    get:
      description: Get a single WellPlateSchema by ID.
      operationId: WellPlateSchema.Get
      parameters:
      - description: ID of the WellPlateSchema.
        in: path
        name: well_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/WellPlateSchema'
          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 WellPlateSchema by ID
      tags:
      - WellPlateSchema
      x-bnch-rate-limit-tier: 5
    patch:
      description: Update WellPlateSchema.
      operationId: WellPlateSchema.Update
      parameters:
      - description: ID of the WellPlateSchema.
        in: path
        name: well_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/UpdateWellPlateSchemaInput'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WellPlateSchema'
          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 WellPlateSchema
      tags:
      - WellPlateSchema
      x-bnch-rate-limit-tier: 4
  /well-plate-schema/{well_plate_schema_id}/field-definitions/items:
    get:
      description: List SchemaFieldDefinition items.
      operationId: WellPlateSchema.fieldDefinitions.List
      parameters:
      - description: ID of the WellPlateSchema.
        in: path
        name: well_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:
      - WellPlateSchema
      x-bnch-rate-limit-tier: 4
  /well-plate-schema:batch-create:
    post:
      description: Batch create WellPlateSchema synchronously in one transaction. Maximum 25 items per request.
      operationId: WellPlateSchema.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/CreateWellPlateSchemaInput'
                  maxItems: 25
                  minItems: 1
                  type: array
              required:
              - items
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                additionalProperties: false
                properties:
                  items:
                    items:
                      $ref: '#/components/schemas/WellPlateSchema'
                    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 WellPlateSchema
      tags:
      - WellPlateSchema
      x-bnch-rate-limit-tier: 3
  /well-plate-schema:batch-update:
    patch:
      description: Batch update WellPlateSchema synchronously in one transaction. Maximum 25 items per request.
      operationId: WellPlateSchema.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/UpdateWellPlateSchemaInputWithPathParams'
                  maxItems: 25
                  minItems: 1
                  type: array
              required:
              - items
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                additionalProperties: false
                properties:
                  items:
                    items:
                      $ref: '#/components/schemas/WellPlateSchema'
                    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 WellPlateSchema
      tags:
      - WellPlateSchema
      x-bnch-rate-limit-tier: 3
  /well-plate-schema:bulk-create:
    post:
      description: Bulk create WellPlateSchema.
      operationId: WellPlateSchema.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 WellPlateSchema
      tags:
      - WellPlateSchema
      x-bnch-rate-limit-tier: 2
  /well-plate-schema:bulk-update:
    patch:
      description: Bulk update WellPlateSchema.
      operationId: WellPlateSchema.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 WellPlateSchema
      tags:
      - WellPlateSchema
      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
    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
    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
    DropdownRef:
      properties:
        __typename:
          type: string
        id:
          format: api_id
          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
    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
    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
    UpdateWellPlateSchemaInput:
      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 defining the well type for plates of this type.
          type: 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
        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
      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
        archive

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