---
title: "Set field definitions on a well plate schema"
method: POST
path: "/api/v3/well-plate-schema/{well_plate_schema_id}:set-field-definitions"
tags: ["Well Plate Schema"]
---

# Set field definitions on a well plate schema

`POST /api/v3/well-plate-schema/{well_plate_schema_id}:set-field-definitions`

## Request

- Base URL: `https://{tenant_name}.benchling.com`
- URL: `https://{tenant_name}.benchling.com/api/v3/well-plate-schema/{well_plate_schema_id}:set-field-definitions`
- Auth: HTTP bearer

Asynchronously set field definitions on a well plate schema. Requires permission to update settings on the schema's registry.

Include every existing field, including archived fields, in the desired order. Provide a field ID to update an existing field; omit the ID to create a new field. Omitted update attributes retain their existing values. To archive a field, set `archived` to `true` and provide `archiveReason`. Omitting a field does not delete it and causes validation to fail. Parent links and numeric ranges are not supported. Configured schema field limits apply, and the request fails if the schema has more items than the configured limit for re-syncing item field values.

## Path parameters

- `well_plate_schema_id` string, required

## Headers

- `EARLY-ACCESS` string

## Request body

- WellPlateSchemaSetFieldDefinitionsInput
  - `fieldDefinitions` WellPlateSchemaSetFieldDefinitionsInputFieldDefinitionsItems[], required: The complete field list in the desired order, including archived fields. Include an ID for each existing field and omit the ID for new fields. Omitted update attributes retain their existing values. To archive an existing field, set archived to true and provide archiveReason; a field that stays archived cannot be modified. All existing fields must be included; omission is not deletion. Parent links and numeric ranges are not supported. Configured schema field limits apply.
    - union
      - CreateBooleanFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'BOOLEAN', required
      - CreateDateFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'DATE', required
      - CreateDateTimeFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'DATE_TIME', required
      - CreateDecimalFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `displayPrecision` integer: The number of decimal places to display (0 to 10).
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `legalTextDropdownId` string: The API ID of the legal text dropdown associated with this field definition.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `numericMax` number, double: The maximum allowed value, inclusive.
        - `numericMin` number, double: The minimum allowed value, inclusive.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'DECIMAL', required
        - `unitId` string: The API ID of the unit to associate with this field.
      - CreateIntegerFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `numericMax` number, double: The maximum allowed value, inclusive.
        - `numericMin` number, double: The minimum allowed value, inclusive.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'INTEGER', required
        - `unitId` string: The API ID of the unit to associate with this field.
      - CreateLongTextFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'LONG_TEXT', required
      - CreateTextFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'TEXT', required
      - CreateAaSequenceLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable, required: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'AA_SEQUENCE_LINK', required
      - CreateAttachmentLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'ATTACHMENT_LINK', required
      - CreateCustomEntityLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable, required: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'CUSTOM_ENTITY_LINK', required
      - CreateDnaOligoLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, required: The API ID of the schema/interface that linked items must belong to.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'DNA_OLIGO_LINK', required
      - CreateDnaSequenceLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable, required: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'DNA_SEQUENCE_LINK', required
      - CreateDropdownLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `dropdownId` string, required: The API ID of the Dropdown that defines the available options.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'DROPDOWN', required
      - CreateAnyEntityLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'ENTITY_LINK', required
      - CreateEntryLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'ENTRY_LINK', required
      - CreateEquipmentLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable, required: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'EQUIPMENT_LINK', required
      - CreateMixtureLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable, required: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'MIXTURE_LINK', required
      - CreateMoleculeLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable, required: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'MOLECULE_LINK', required
      - CreateOligoConjugateLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable, required: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'OLIGO_CONJUGATE_LINK', required
      - CreateOligoDuplexLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable, required: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'OLIGO_DUPLEX_LINK', required
      - CreateProteinLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable, required: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'PROTEIN_LINK', required
      - CreateRnaSequenceLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, required: The API ID of the schema/interface that linked items must belong to.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'RNA_SEQUENCE_LINK', required
      - CreateRnaOligoLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, required: The API ID of the schema/interface that linked items must belong to.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'RNA_OLIGO_LINK', required
      - CreateStorableLinkFieldDefinitionInput
        - `description` string: An optional user-provided description of this field definition.
        - `isMulti` boolean, required: When true, multiple linked values are allowed.
        - `isRequired` boolean, required: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable, required: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string, required: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string, required: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'STORAGE_LINK', required
      - UpdateBooleanFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'BOOLEAN', required
      - UpdateDateFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'DATE', required
      - UpdateDateTimeFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'DATE_TIME', required
      - UpdateDecimalFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `displayPrecision` integer: The number of decimal places to display (0 to 10).
        - `id` string, required: The API ID of the field definition to update.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `legalTextDropdownId` string, nullable: The API ID of the legal text dropdown associated with this field definition. Set to null to remove the association.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `numericMax` number, double: The maximum allowed value, inclusive.
        - `numericMin` number, double: The minimum allowed value, inclusive.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'DECIMAL', required
        - `unitId` string: The API ID of the unit to associate with this field.
      - UpdateIntegerFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `numericMax` number, double: The maximum allowed value, inclusive.
        - `numericMin` number, double: The minimum allowed value, inclusive.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'INTEGER', required
        - `unitId` string: The API ID of the unit to associate with this field.
      - UpdateLongTextFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'LONG_TEXT', required
      - UpdateTextFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'TEXT', required
      - UpdateAaSequenceLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'AA_SEQUENCE_LINK', required
      - UpdateAttachmentLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'ATTACHMENT_LINK', required
      - UpdateCustomEntityLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'CUSTOM_ENTITY_LINK', required
      - UpdateDnaOligoLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string: The API ID of the schema/interface that linked items must belong to.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'DNA_OLIGO_LINK', required
      - UpdateDnaSequenceLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'DNA_SEQUENCE_LINK', required
      - UpdateDropdownLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `dropdownId` string: The API ID of the Dropdown that defines the available options.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'DROPDOWN', required
      - UpdateAnyEntityLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'ENTITY_LINK', required
      - UpdateEntryLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'ENTRY_LINK', required
      - UpdateEquipmentLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'EQUIPMENT_LINK', required
      - UpdateMixtureLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'MIXTURE_LINK', required
      - UpdateMoleculeLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'MOLECULE_LINK', required
      - UpdateOligoConjugateLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'OLIGO_CONJUGATE_LINK', required
      - UpdateOligoDuplexLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'OLIGO_DUPLEX_LINK', required
      - UpdateProteinLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'PROTEIN_LINK', required
      - UpdateRnaSequenceLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string: The API ID of the schema/interface that linked items must belong to.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'RNA_SEQUENCE_LINK', required
      - UpdateRnaOligoLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isParent` boolean: When true, indicates a parent-child relationship used in the registry's lot-numbering functionality.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string: The API ID of the schema/interface that linked items must belong to.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'RNA_OLIGO_LINK', required
      - UpdateStorableLinkFieldDefinitionInput
        - `archiveReason` string: Why it is being archived. Required when `archived` is `true`, and not allowed when unarchiving.
        - `archived` boolean: Set to `true` to archive or `false` to unarchive it. Archiving requires `archiveReason`.
        - `description` string: An optional user-provided description of this field definition.
        - `id` string, required: The API ID of the field definition to update.
        - `isMulti` boolean: When true, multiple linked values are allowed.
        - `isRequired` boolean: When true, a value must be provided for this field.
        - `linkDefinitionId` string, nullable: The API ID of the schema to constrain links to, or null to allow links to any item of the linked type.
        - `name` string: The user-facing display name of this field definition. Must be unique within the schema.
        - `systemName` string: The machine-readable identifier used as the warehouse column name. Must be unique within the schema.
        - `type` 'STORAGE_LINK', required

## Response `202`

Task started

- AsyncTaskLink
  - `pollingUri` string, uri
  - `taskId` string

## Other responses

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

## Changes

- **2026-11-05** `3873a10bf7b8`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/benchling/apis/benchling-api/changes/api/v3/well-plate-schema/:well_plate_schema_id:set-field-definitions/post.md)

---

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