openapi: 3.2.0 info: license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html title: Benchling Run Schema API version: 2.0.0 description: 'Defines the structure and automation configuration for a category of Runs in Benchling''s lab automation system. A RunSchema specifies field definitions for run metadata, input generator configurations (see AutomationInputFileConfig) for creating instrument worklists, and output processor configurations (see AutomationOutputFileConfig) for parsing instrument results. Schemas can be linked to an AnalysisTemplate for automated data processing after runs complete. Settings control whether runs can be created from notebooks (allowCreateRunFromNotebook), inserted from the run inbox (allowInsertRunFromInbox), and whether equipment tracking is enabled (shouldRecordEquipment). Each schema is owned by an Organization and has a systemName used for Data Platform integration. RunSchemas define the automation workflow for specific assay types like qPCR, ELISA, or sequencing.' servers: - url: /api/v3 security: - oAuth: [] - basicApiKeyAuth: [] tags: - description: 'Defines the structure and automation configuration for a category of Runs in Benchling''s lab automation system. A RunSchema specifies field definitions for run metadata, input generator configurations (see AutomationInputFileConfig) for creating instrument worklists, and output processor configurations (see AutomationOutputFileConfig) for parsing instrument results. Schemas can be linked to an AnalysisTemplate for automated data processing after runs complete. Settings control whether runs can be created from notebooks (allowCreateRunFromNotebook), inserted from the run inbox (allowInsertRunFromInbox), and whether equipment tracking is enabled (shouldRecordEquipment). Each schema is owned by an Organization and has a systemName used for Data Platform integration. RunSchemas define the automation workflow for specific assay types like qPCR, ELISA, or sequencing.' name: RunSchema x-bnch-organization: Benchling paths: /run-schema/items: get: description: List RunSchema items. operationId: RunSchema.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/RunSchemaPaginatedList' 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 RunSchema items tags: - RunSchema x-bnch-rate-limit-tier: 4 /run-schema/{run_schema_id}: get: description: Get a single RunSchema by ID. operationId: RunSchema.Get parameters: - description: ID of the RunSchema. in: path name: run_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/RunSchema' 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 RunSchema by ID tags: - RunSchema x-bnch-rate-limit-tier: 5 /run-schema/{run_schema_id}/automation-input-file-configs/items: get: description: List AutomationInputFileConfig items. operationId: RunSchema.automationInputFileConfigs.List parameters: - description: ID of the RunSchema. in: path name: run_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/AutomationInputFileConfigUnpaginatedList' 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 AutomationInputFileConfig items tags: - RunSchema x-bnch-rate-limit-tier: 4 /run-schema/{run_schema_id}/automation-output-file-configs/items: get: description: List AutomationOutputFileConfig items. operationId: RunSchema.automationOutputFileConfigs.List parameters: - description: ID of the RunSchema. in: path name: run_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/AutomationOutputFileConfigUnpaginatedList' 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 AutomationOutputFileConfig items tags: - RunSchema x-bnch-rate-limit-tier: 4 /run-schema/{run_schema_id}/field-definitions/items: get: description: List SchemaFieldDefinition items. operationId: RunSchema.fieldDefinitions.List parameters: - description: ID of the RunSchema. in: path name: run_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: - RunSchema x-bnch-rate-limit-tier: 4 components: schemas: CustomEntitySchemaRef: properties: __typename: type: string id: format: api_id type: string type: object AutomationInputFileRowConfig: description: 'Configures how a set of rows is generated for a lab automation input file. Each row config specifies a data source via LookupConfig, an optional destination, column definitions, and an optional plate layout for positional mapping.' properties: __typename: type: string columns: description: Configuration for the columns of the input file oneOf: - items: $ref: '#/components/schemas/AutomationInputFileRowConfigColumn' type: array - type: 'null' destination: description: DestinationInfo for the destinations used to generate a set of rows of the input file oneOf: - $ref: '#/components/schemas/AutomationInputFileDestinationInfo' - type: 'null' plateLayout: description: PlateLayout to use when generating the input file oneOf: - $ref: '#/components/schemas/PlateLayout' - type: 'null' 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 PlateLayout: description: 'Specifies the well-mapping layout used when generating input file rows for plate-based transfers. The layout type controls how sample positions on a source plate map to positions on a destination plate.' properties: __typename: type: string layoutType: description: The type of the PlateLayout enum: - COLUMN_INTERLEAVE - INTERLEAVE - REVERSE_COLUMN_INTERLEAVE - REVERSE_INTERLEAVE - REVERSE_STAMP_TO_QUADRANTS - STAMP - STAMP_TO_QUADRANTS - null type: - 'null' - string type: object AutomationOutputFileResultSchemaInfo: description: 'Configuration for creating assay results when processing an automation output file. Specifies the result schema and field mappings that control how file data is recorded as structured results.' properties: __typename: type: string fields: description: Configuration for schema fields of results to be created when processing output files oneOf: - items: $ref: '#/components/schemas/AutomationOutputFileTransformationFieldInfo' type: array - type: 'null' schema: description: Result schema of results to be created when processing output files oneOf: - $ref: '#/components/schemas/ResultSchemaRef' - type: 'null' type: object RunSchemaRef: properties: __typename: type: string id: format: api_id type: string type: object ExtraHeadersTransformationProperties: description: 'Properties for an EXTRA_HEADERS transform, specifying the row range that contains non-standard header rows to skip during file processing.' properties: __typename: type: string headerRowIndex: description: Index of the first row of the header type: - 'null' - integer lastHeaderRowIndex: description: Index of the last row of the header. Optional, can be omitted if header is a single row type: - 'null' - integer type: object AutomationInputFileNamePart: description: 'Represents a single segment of a generated input file name. Parts are concatenated in order to build the file name and can contain static text, date/time stamps, run identifiers, or field values from the associated run schema.' properties: __typename: type: string field: description: Run schema field for the name of the input file (only present for FIELD type) oneOf: - $ref: '#/components/schemas/SchemaFieldDefinitionRef' - type: 'null' text: description: Text value for the name of the input file (only present for TEXT type) type: - 'null' - string type: description: The type of this name template part enum: - CREATED_AT_DATE - CREATED_AT_TIME - DISPLAY_NAME - FIELD - RUN_API_ID - RUN_ID - RUN_SCHEMA_NAME - SOURCE_FILE_NAME - TEXT - null type: - 'null' - string type: object LongTextFieldDefinition: description: A long text field definition for multi-line text values with no length restrictions. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isRequired: type: boolean modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object PivotTransform: description: 'A data transform that reshapes long-format data into wide format by pivoting unique values from a keys column into separate columns.' properties: __typename: type: string transformationProperties: description: Additional parameters for this transform oneOf: - $ref: '#/components/schemas/PivotTransformationProperties' - type: 'null' type: description: The type of this transform (PIVOT) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object MultipleValuesFilterTransformationProperties: description: 'Properties for a FILTER transform that filters rows by checking whether a column''s value is in (ISIN) or not in (NOTIN) a set of allowed values.' properties: __typename: type: string column: description: Name of column to be filtered type: - 'null' - string type: description: Type of filtering to perform (ISIN or NOTIN) enum: - LT - LE - GE - GT - EQ - NE - ISIN - NOTIN - ISNULL - NOTNULL - null type: - 'null' - string values: description: Values to filter on oneOf: - items: type: string type: array - type: 'null' 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 ExtraHeadersTransform: description: 'A data transform that handles files with extra header rows above the standard column header. Strips the specified header rows so downstream processing sees clean tabular data.' properties: __typename: type: string transformationProperties: description: Additional parameters for this transform oneOf: - $ref: '#/components/schemas/ExtraHeadersTransformationProperties' - type: 'null' type: description: The type of this transform (EXTRA_HEADERS) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object MergeTransformationProperties: description: 'Properties for a MERGE transform, specifying the columns to combine, the output column name, and the delimiter placed between merged values.' properties: __typename: type: string columnNames: description: Names of columns to be merged oneOf: - items: type: string type: array - type: 'null' delimiter: description: Delimiter to put between merged values type: - 'null' - string outputColumnName: description: Name of column to contain merged values type: - 'null' - 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 FolderRef: properties: __typename: type: string id: format: api_id type: string type: object ExtraFootersTransformationProperties: description: 'Properties for an EXTRA_FOOTERS transform, specifying how many trailing rows to remove from the bottom of the file.' properties: __typename: type: string numRowsToRemove: description: Number of rows to remove from the bottom of the file type: - 'null' - integer type: object OrganizationRef: properties: __typename: type: string id: format: api_id 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 RunSchemaPaginatedList: additionalProperties: false properties: items: items: $ref: '#/components/schemas/RunSchema' type: array nextToken: type: string type: object DropdownRef: properties: __typename: type: string id: format: api_id type: string type: object PivotTransformationProperties: description: 'Properties for a PIVOT transform, specifying the index columns to group by, the keys column whose values become new column headers, and the values column to spread.' properties: __typename: type: string indexColumns: oneOf: - items: type: string type: array - type: 'null' keysColumn: type: - 'null' - string valuesColumn: type: - 'null' - string type: object CustomTransformationProperties: description: 'Properties for a CUSTOM transform, identifying the Benchling App that performs the transformation via its API ID.' properties: __typename: type: string transformId: description: API ID of a Benchling App that performs the transform type: - 'null' - string type: object BaseFieldDefinition: description: 'A basic schema field definition for primitive data types. Used for fields with types like TEXT, INTEGER, FLOAT, BOOLEAN, DATE, DATETIME, JSON, and LONG_TEXT. Each field has a user-facing `name` and a `systemName` for warehouse/API access. Fields can be archived when no longer needed. For fields that link to other objects, use `SchemaLinkFieldDefinition`; for dropdown selections, use `DropdownLinkFieldDefinition`.' properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: description: Determines whether multiple values are allowed type: boolean isRequired: description: Determines whether values must be provided type: boolean name: type: string systemName: type: string type: enum: - AA_PART_LINK - AA_SEQUENCE_LINK - ASSAY_REQUEST_LINK - ASSAY_RESULT_LINK - ASSAY_RUN_LINK - BATCH_LINK - BLOB_LINK - BOOLEAN - CUSTOM_ENTITY_LINK - DATE - DATETIME - DNA_SEQUENCE_LINK - ENTITY_LINK - ENTRY_LINK - FLOAT - INTEGER - JSON - LONG_TEXT - MIXTURE_LINK - MOLECULE_LINK - BASE_MOLECULE_LINK - PART_LINK - SAMPLE_LINK - DROPDOWN - STORAGE_LINK - TEXT - TRANSCRIPTION_LINK - TRANSLATION_LINK type: string type: object AutomationOutputFileEntitySchemaInfo: description: 'Configuration for registering or updating entities when processing an automation output file. Specifies the entity schema, destination folder, naming strategy, field mappings, and the action to perform (create, update, or both).' properties: __typename: type: string actionType: description: CREATE, UPDATE, or CREATE_OR_UPDATE enum: - CREATE - UPDATE - CREATE_OR_UPDATE - null type: - 'null' - string fields: description: Configuration for schema fields of items to be registered when processing output files oneOf: - items: $ref: '#/components/schemas/AutomationOutputFileTransformationFieldInfo' type: array - type: 'null' folder: description: Folder for items registered when processing output files. If missing, will be entered on the run oneOf: - $ref: '#/components/schemas/FolderRef' - type: 'null' namingStrategy: description: Naming strategy for items to be registered when processing output files enum: - NEW_IDS - IDS_FROM_NAMES - DELETE_NAMES - SET_FROM_NAME_PARTS - REPLACE_NAMES_FROM_PARTS - KEEP_NAMES - REPLACE_ID_AND_NAME_FROM_PARTS - null type: - 'null' - string schema: description: Entity schema of items to be registered when processing output files oneOf: - $ref: '#/components/schemas/EntitySchemaRef' - type: 'null' shouldReplaceExisting: description: Whether to replace existing items in the destination containers with the newly registered items type: - 'null' - boolean type: object DnaOligoSchemaRef: properties: __typename: type: string id: format: api_id type: string type: object OligoDuplexLinkFieldDefinition: description: A schema field definition for linking to Oligo Duplexes. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isParent: description: 'Means the link is from a child to a parent Oligo Duplex. Important for the registry''s lot-numbering functionality.' type: boolean isRequired: type: boolean linkDefinition: oneOf: - $ref: '#/components/schemas/OligoDuplexSchemaRef' - type: 'null' modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object DropdownLinkFieldDefinition: description: 'A schema field definition that links to a dropdown for value selection. The `linkDefinition` field references the `Dropdown` configuration that defines the available options. When `isMulti` is true, users can select multiple dropdown options for a single field value. The dropdown provides controlled vocabulary for consistent data entry across the organization.' properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isRequired: type: boolean linkDefinition: $ref: '#/components/schemas/DropdownRef' modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object EntryLinkFieldDefinition: description: A schema field definition for linking to notebook entries. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isRequired: type: boolean modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object AutomationOutputFileInventorySchemaInfo: description: 'Configuration for creating or updating inventory items (plates, boxes, or containers) when processing an automation output file. Specifies the destination schema, storage location, project context, and field mappings.' properties: __typename: type: string fields: description: Configuration for schema fields of inventory items to be created or updated when processing output files oneOf: - items: $ref: '#/components/schemas/AutomationOutputFileTransformationFieldInfo' type: array - type: 'null' location: description: Location for inventory items to be created when processing output files. If missing, will be entered on the run oneOf: - $ref: '#/components/schemas/LocationRef' - type: 'null' project: description: Project for inventory items to be created when processing output files. If missing, will be entered on the run oneOf: - $ref: '#/components/schemas/ObjectRef' - type: 'null' schema: description: Inventory schema for inventory items to be created when processing output files oneOf: - $ref: '#/components/schemas/ObjectRef' - type: 'null' type: object ArithmeticTransformationProperties: description: 'Properties for an ARITHMETIC transform, defining the operator, operands, and the name of the result column. Supports addition, subtraction, multiplication, and division between column values and/or constants.' properties: __typename: type: string firstVariable: description: First operand for the arithmetic operation oneOf: - anyOf: - $ref: '#/components/schemas/ArithmeticTransformColumnVariable' - $ref: '#/components/schemas/ArithmeticTransformConstantVariable' discriminator: propertyName: __typename - type: 'null' newColumnName: description: Name of the column that will contain the results of the arithmetic operation type: - 'null' - string operator: description: 'The arithmetic operation to perform: +, -, *, or /' type: - 'null' - string secondVariable: description: Second operand for the arithmetic operation oneOf: - anyOf: - $ref: '#/components/schemas/ArithmeticTransformColumnVariable' - $ref: '#/components/schemas/ArithmeticTransformConstantVariable' discriminator: propertyName: __typename - type: 'null' type: object ArithmeticTransform: description: 'A data transform that performs arithmetic operations between two variables (columns or constants) and writes the result to a new column.' properties: __typename: type: string transformationProperties: description: Additional parameters for this transform oneOf: - $ref: '#/components/schemas/ArithmeticTransformationProperties' - type: 'null' type: description: The type of this transform (ARITHMETIC) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object SchemaLinkFieldDefinition: description: 'A schema field definition for link types that reference other Benchling objects. Extends basic field properties with link-specific constraints.' properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: description: determines whether multiple values are allowed type: boolean isRequired: type: boolean name: type: string schemaId: description: limits links to entities of a specific schema type: - 'null' - string systemName: type: string type: description: indicates the kind of object being linked enum: - AA_PART_LINK - AA_SEQUENCE_LINK - ASSAY_REQUEST_LINK - ASSAY_RESULT_LINK - ASSAY_RUN_LINK - BATCH_LINK - BLOB_LINK - BOOLEAN - CUSTOM_ENTITY_LINK - DATE - DATETIME - DNA_SEQUENCE_LINK - ENTITY_LINK - ENTRY_LINK - FLOAT - INTEGER - JSON - LONG_TEXT - MIXTURE_LINK - MOLECULE_LINK - BASE_MOLECULE_LINK - PART_LINK - SAMPLE_LINK - DROPDOWN - STORAGE_LINK - TEXT - TRANSCRIPTION_LINK - TRANSLATION_LINK type: string type: object InternalServerError: properties: detail: type: - 'null' - string - object errorId: type: string instance: type: string status: type: integer title: type: - 'null' - string type: type: string required: - type - title - detail - status - instance type: object AddColumnTransform: description: 'A data transform that adds a new column to the file with values resolved via a LookupConfig. Used in input file generation to enrich data with looked-up values.' properties: __typename: type: string transformationProperties: description: Additional parameters for this transform oneOf: - $ref: '#/components/schemas/AddColumnTransformationProperties' - type: 'null' type: description: The type of this transform (ADD_COLUMN) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object EntitySchemaRef: properties: __typename: type: string id: format: api_id type: string type: object RnaOligoLinkFieldDefinition: description: A schema field definition for linking to RNA Oligos. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isParent: description: 'Means the link is from a child to a parent RNA Oligo. Important for the registry''s lot-numbering functionality.' type: boolean isRequired: type: boolean linkDefinition: $ref: '#/components/schemas/RnaOligoSchemaRef' description: The linked item must be of this schema. This is required because we do not allow linking to a generic RNA Oligo. modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object AaSequenceSchemaRef: properties: __typename: type: string id: format: api_id type: string type: object StorableLinkFieldDefinition: description: A schema field definition for linking to storable inventory items. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isRequired: type: boolean modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object RnaSequenceLinkFieldDefinition: description: A schema field definition for linking to RNA sequences. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isParent: description: 'Means the link is from a child to a parent RNA sequence. Important for the registry''s lot-numbering functionality.' type: boolean isRequired: type: boolean linkDefinition: $ref: '#/components/schemas/RnaSequenceSchemaRef' description: The linked item must be of this schema. This is required because we do not allow linking to a generic RNA Sequence. modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object FloatFieldDefinition: description: A float field definition for decimal number values. Supports numeric constraints (min/max), display precision, and units. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string displayPrecision: type: - 'null' - integer id: type: string isRequired: type: boolean modifiedAt: format: datetime type: - 'null' - string name: type: string numericMax: type: - 'null' - number numericMin: type: - 'null' - number systemName: type: string unit: oneOf: - $ref: '#/components/schemas/UnitRef' - type: 'null' type: object ArithmeticTransformColumnVariable: description: 'A variable in an arithmetic transform that references values from a named column in the file.' properties: __typename: type: string type: description: COLUMN enum: - CONSTANT - COLUMN - null type: - 'null' - string value: description: Name of a column that contains values on which to perform the arithmetic operation type: - 'null' - string type: object AutomationInputFileConfigUnpaginatedList: additionalProperties: false properties: items: items: $ref: '#/components/schemas/AutomationInputFileConfig' type: array type: object MeltTransform: description: 'A data transform that unpivots wide-format data into long format by converting selected value columns into rows, each identified by a variable name.' properties: __typename: type: string transformationProperties: description: Additional parameters for this transform oneOf: - $ref: '#/components/schemas/MeltTransformationProperties' - type: 'null' type: description: The type of this transform (MELT) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object DnaSequenceLinkFieldDefinition: description: A schema field definition for linking to DNA sequences. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isParent: description: 'Means the link is from a child to a parent DNA sequence. Important for the registry''s lot-numbering functionality.' type: boolean isRequired: type: boolean linkDefinition: oneOf: - $ref: '#/components/schemas/DnaSequenceSchemaRef' - type: 'null' modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object FieldsetRef: properties: __typename: type: string id: format: api_id type: string type: object SchemaFieldDefinitionRef: properties: __typename: type: string id: format: api_id type: string type: object SystemCategoryLinkFieldDefinition: description: A schema field definition for linking to entities that implement a system category (static schema interface). properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isRequired: type: boolean modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object MoleculeLinkFieldDefinition: description: A schema field definition for linking to molecules. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isParent: description: 'Means the link is from a child to a parent molecule. Important for the registry''s lot-numbering functionality.' type: boolean isRequired: type: boolean linkDefinition: oneOf: - $ref: '#/components/schemas/MoleculeSchemaRef' - type: 'null' modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object FieldsetLinkFieldDefinition: description: A schema field definition for linking to entities that implement a fieldset (custom schema interface). properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isParent: description: 'Means the link is from a child to a parent entity. Important for the registry''s lot-numbering functionality.' type: boolean isRequired: type: boolean linkDefinition: $ref: '#/components/schemas/FieldsetRef' modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object AutomationOutputFileTransformationFieldInfo: description: 'Maps a schema field to a data source when processing an automation output file. Specifies how to populate the field: directly from a file column, from the primary sample entity, from source container contents, or by calculating final concentration.' properties: __typename: type: string columnIndex: description: Index of column to use for a DIRECT field type: - 'null' - integer columnName: description: Name of column to use for a DIRECT field type: - 'null' - string filterSchema: description: Optional schema for items to be linked in a SOURCE_CONTENTS field oneOf: - $ref: '#/components/schemas/EntitySchemaRef' - type: 'null' schemaField: description: Schema field that this AutomationOutputFileTransformationFieldInfo tells us how to populate when processing output files oneOf: - $ref: '#/components/schemas/SchemaFieldDefinitionRef' - type: 'null' type: description: Type of field configuration - CALCULATE_FINAL_CONCENTRATION, DIRECT, PRIMARY_SAMPLE_ENTITY, or SOURCE_CONTENTS enum: - CALCULATE_FINAL_CONCENTRATION - DIRECT - PRIMARY_SAMPLE_ENTITY - SOURCE_CONTENTS - null type: - 'null' - string type: object MeltTransformationProperties: description: 'Properties for a MELT transform, specifying identifier columns to keep fixed, value columns to unpivot, and optional names for the new variable and value columns.' properties: __typename: type: string identifierColumns: oneOf: - items: type: string type: array - type: 'null' newValueColumn: type: - 'null' - string newVariableColumn: type: - 'null' - string valueColumns: oneOf: - items: type: string type: array - type: 'null' type: object CustomTransform: description: 'A data transform that delegates processing to an external Benchling App. The app is identified by its API ID in the transformation properties.' properties: __typename: type: string transformationProperties: description: Additional parameters for this transform oneOf: - $ref: '#/components/schemas/CustomTransformationProperties' - type: 'null' type: description: The type of this transform (CUSTOM) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object TranscriptionLinkFieldDefinition: description: A schema field definition for linking to transcriptions (RNA sequences created from DNA). properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isParent: description: 'Means the link is from a child to a parent RNA sequence. Important for the registry''s lot-numbering functionality.' type: boolean isRequired: type: boolean linkDefinition: $ref: '#/components/schemas/RnaSequenceSchemaRef' modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object AutomationOutputFileConfig: description: 'Defines the configuration for processing output files from laboratory automation instruments and converting them into Benchling data. An AutomationOutputFileConfig specifies the expected file format (columns, delimiter, locale), data transformations to apply before processing, and what actions to take with the data: creating or updating registered entities (entitySchemaInfo), recording assay results (resultSchemaInfo), or creating inventory items (inventorySchemaInfo). Output processors using this config (see AutomationOutputProcessor) parse instrument output files and execute the configured actions, enabling automated data capture from plate readers, mass spectrometers, and other lab equipment.' properties: __typename: type: string allowMissingSource: description: Whether to allow some source values to be missing in the output file to be processed type: - 'null' - boolean automationOutputFileTableType: description: 'Type for the notebook table produced by processing output files with this configuration. GRID for one row per box/plate, SAMPLE for one row per sample.' enum: - GRID - SAMPLE - null type: - 'null' - string columns: description: 'List of columns for output files to be processed by this configuration. Either "columns" or "namedColumnTypes", but not both, must be provided.' oneOf: - items: type: string type: array - type: 'null' concentrationUnits: description: Units with which to interpret any concentration values in output files processed by this configuration. type: - 'null' - string datasetNameTemplateParts: description: Configuration for naming output datasets generated by this configuration oneOf: - items: $ref: '#/components/schemas/AutomationInputFileNamePart' type: array - type: 'null' delimiter: description: Delimiter to use in transform files generated by this configuration type: - 'null' - string entitySchemaInfo: description: Configuration for registered entities created or updated when processing output files with this configuration. oneOf: - $ref: '#/components/schemas/AutomationOutputFileEntitySchemaInfo' - type: 'null' fileExtension: description: Extension to use for transform files generated by this configuration type: - 'null' - string id: type: string inventorySchemaInfo: description: Configuration for storage created or updated when processing output files with this configuration. oneOf: - $ref: '#/components/schemas/AutomationOutputFileInventorySchemaInfo' - type: 'null' isHidden: description: Whether output processors for this configuration are hidden from notebook runs. type: - 'null' - boolean name: description: The name of the AutomationOutputFileConfig type: - 'null' - string namedColumnTypes: description: 'List of columns for output files to be processed by this configuration. Either "columns" or "namedColumnTypes", but not both, must be provided.' oneOf: - items: $ref: '#/components/schemas/AutomationOutputFileNamedColumnType' type: array - type: 'null' quantityUnits: description: Units with which to interpret any volume or quantity values in output files processed by this configuration. type: - 'null' - string resultSchemaInfo: description: Configuration for results created when processing output files with this configuration. oneOf: - $ref: '#/components/schemas/AutomationOutputFileResultSchemaInfo' - type: 'null' spreadsheetProcessingLocale: description: Locale to use to interpret dates, times, and decimal values in output files processed with this configuration type: - 'null' - string transforms: description: Configuration for transforms to run before processing output files with this configuration. oneOf: - items: $ref: '#/components/schemas/AutomationTransformConfig' type: array - type: 'null' type: object IntegerFieldDefinition: description: An integer field definition for whole number values. Supports numeric constraints (min/max) and units. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isRequired: type: boolean modifiedAt: format: datetime type: - 'null' - string name: type: string numericMax: type: - 'null' - number numericMin: type: - 'null' - number systemName: type: string unit: oneOf: - $ref: '#/components/schemas/UnitRef' - type: 'null' type: object RnaSequenceSchemaRef: properties: __typename: type: string id: format: api_id type: string type: object AddColumnTransformationProperties: description: Properties for an ADD_COLUMN transform, specifying the name of the new column to add. properties: __typename: type: string column: description: The name of the column to be added type: - 'null' - string type: object FindReplaceTransform: description: 'A data transform that substitutes values in the file by finding occurrences and replacing them. Replacement values can be specified inline or resolved via a LookupConfig.' properties: __typename: type: string type: description: The type of this transform (FIND_REPLACE) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object JsonFieldDefinition: description: A JSON field definition for storing structured JSON data. 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 DateFieldDefinition: description: A date field definition for date-only values (without time). 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 AutomationTransformConfig: anyOf: - $ref: '#/components/schemas/AddColumnTransform' - $ref: '#/components/schemas/ArithmeticTransform' - $ref: '#/components/schemas/CustomTransform' - $ref: '#/components/schemas/DuplicateTransform' - $ref: '#/components/schemas/ExtraFootersTransform' - $ref: '#/components/schemas/ExtraHeadersTransform' - $ref: '#/components/schemas/FilterTransform' - $ref: '#/components/schemas/FindReplaceTransform' - $ref: '#/components/schemas/MeltTransform' - $ref: '#/components/schemas/MergeTransform' - $ref: '#/components/schemas/PivotTransform' - $ref: '#/components/schemas/PlateShapeTransform' - $ref: '#/components/schemas/RemoveQuotesTransform' - $ref: '#/components/schemas/SplitTransform' discriminator: propertyName: __typename type: object OligoDuplexSchemaRef: properties: __typename: type: string id: format: api_id type: string type: object RnaOligoSchemaRef: properties: __typename: type: string id: format: api_id type: string type: object AnyEntityLinkFieldDefinition: description: A schema field definition for linking to any entity type. 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 AutomationOutputFileConfigUnpaginatedList: additionalProperties: false properties: items: items: $ref: '#/components/schemas/AutomationOutputFileConfig' type: array type: object NumberValueFilterTransformationProperties: description: 'Properties for a FILTER transform that filters rows by comparing a column''s numeric value using relational operators (EQ, NE, LE, LT, GE, GT).' properties: __typename: type: string column: description: Name of column to be filtered type: - 'null' - string type: description: Type of filtering to perform (EQ, NE, LE, LT, GE, or GT) enum: - LT - LE - GE - GT - EQ - NE - ISIN - NOTIN - ISNULL - NOTNULL - null type: - 'null' - string value: description: Value to filter on type: - 'null' - number type: object DnaSequenceSchemaRef: properties: __typename: type: string id: format: api_id type: string type: object OligoConjugateLinkFieldDefinition: description: A schema field definition for linking to Oligo Conjugates. 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 Conjugate. Important for the registry''s lot-numbering functionality.' type: boolean isRequired: type: boolean linkDefinition: oneOf: - $ref: '#/components/schemas/OligoConjugateSchemaRef' - type: 'null' modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object LocationRef: properties: __typename: type: string id: format: api_id type: string type: object ExtraFootersTransform: description: 'A data transform that removes trailing footer rows from a file. Useful for instrument output files that append summary or metadata rows after the data.' properties: __typename: type: string transformationProperties: description: Additional parameters for this transform oneOf: - $ref: '#/components/schemas/ExtraFootersTransformationProperties' - type: 'null' type: description: The type of this transform (EXTRA_FOOTERS) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object DnaPartLinkFieldDefinition: description: A schema field definition for linking to DNA parts. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isParent: description: 'Means the link is from a child to a parent DNA sequence. Important for the registry''s lot-numbering functionality.' type: boolean isRequired: type: boolean modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object SchemaFieldDefinition: anyOf: - $ref: '#/components/schemas/AaPartLinkFieldDefinition' - $ref: '#/components/schemas/AaSequenceLinkFieldDefinition' - $ref: '#/components/schemas/AntibodyLinkFieldDefinition' - $ref: '#/components/schemas/AnyEntityLinkFieldDefinition' - $ref: '#/components/schemas/AssayRequestLinkFieldDefinition' - $ref: '#/components/schemas/AssayResultLinkFieldDefinition' - $ref: '#/components/schemas/AssayRunLinkFieldDefinition' - $ref: '#/components/schemas/BaseFieldDefinition' - $ref: '#/components/schemas/BlobLinkFieldDefinition' - $ref: '#/components/schemas/BooleanFieldDefinition' - $ref: '#/components/schemas/CustomEntityLinkFieldDefinition' - $ref: '#/components/schemas/DateFieldDefinition' - $ref: '#/components/schemas/DateTimeFieldDefinition' - $ref: '#/components/schemas/DnaOligoLinkFieldDefinition' - $ref: '#/components/schemas/DnaPartLinkFieldDefinition' - $ref: '#/components/schemas/DnaSequenceLinkFieldDefinition' - $ref: '#/components/schemas/DropdownLinkFieldDefinition' - $ref: '#/components/schemas/EntryLinkFieldDefinition' - $ref: '#/components/schemas/EquipmentLinkFieldDefinition' - $ref: '#/components/schemas/FieldsetLinkFieldDefinition' - $ref: '#/components/schemas/FloatFieldDefinition' - $ref: '#/components/schemas/IntegerFieldDefinition' - $ref: '#/components/schemas/JsonFieldDefinition' - $ref: '#/components/schemas/LongTextFieldDefinition' - $ref: '#/components/schemas/MixtureLinkFieldDefinition' - $ref: '#/components/schemas/MoleculeLinkFieldDefinition' - $ref: '#/components/schemas/OligoConjugateLinkFieldDefinition' - $ref: '#/components/schemas/OligoDuplexLinkFieldDefinition' - $ref: '#/components/schemas/RnaOligoLinkFieldDefinition' - $ref: '#/components/schemas/RnaSequenceLinkFieldDefinition' - $ref: '#/components/schemas/SchemaLinkFieldDefinition' - $ref: '#/components/schemas/StorableLinkFieldDefinition' - $ref: '#/components/schemas/SystemCategoryLinkFieldDefinition' - $ref: '#/components/schemas/TextFieldDefinition' - $ref: '#/components/schemas/TranscriptionLinkFieldDefinition' - $ref: '#/components/schemas/TranslationLinkFieldDefinition' discriminator: propertyName: __typename type: object BooleanFieldDefinition: description: A boolean field definition for true/false values. 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 MoleculeSchemaRef: properties: __typename: type: string id: format: api_id type: string type: object AssayRunLinkFieldDefinition: description: A schema field definition for linking to assay runs. 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: oneOf: - $ref: '#/components/schemas/RunSchemaRef' - type: 'null' modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object StringValueFilterTransformationProperties: description: 'Properties for a FILTER transform that filters rows by comparing a column''s string value using equality or inequality.' properties: __typename: type: string column: description: Name of column to be filtered type: - 'null' - string type: description: Type of filtering to perform (EQ or NE) enum: - LT - LE - GE - GT - EQ - NE - ISIN - NOTIN - ISNULL - NOTNULL - null type: - 'null' - string value: description: Value to filter on type: - 'null' - string type: object ArithmeticTransformConstantVariable: description: A variable in an arithmetic transform that holds a fixed numeric constant. properties: __typename: type: string type: description: CONSTANT enum: - CONSTANT - COLUMN - null type: - 'null' - string value: description: A constant value on which to perform the arithmetic operation type: - 'null' - number type: object AutomationInputFileRowConfigColumn: description: 'Defines a single column within an input file row configuration. Each column has a lookup configuration that determines the values to populate and a display name.' properties: __typename: type: string name: description: Name for this column of the input file type: - 'null' - string type: object GeneralError: properties: detail: type: - 'null' - string - object instance: type: string status: type: integer title: type: - 'null' - string type: type: string required: - type - title - detail - status - instance type: object EquipmentSchemaRef: properties: __typename: type: string id: format: api_id type: string type: object TextFieldDefinition: description: A text field definition for short, single-line text values. 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 RemoveQuotesTransform: description: 'A data transform that strips quote characters from all values in the file. Takes no additional configuration parameters.' properties: __typename: type: string transformationProperties: description: Additional parameters for this transform - an empty object type: - 'null' - object type: description: The type of this transform (REMOVE_QUOTES) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object AutomationInputFileDestinationInfo: description: 'Describes a destination target for rows in a lab automation input file. Contains a lookup configuration for resolving destination samples and an optional display name.' properties: __typename: type: string name: description: Name for this DestinationInfo type: - 'null' - string type: object EquipmentLinkFieldDefinition: description: A schema field definition for linking to Equipment. 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 Equipment. Important for the registry''s lot-numbering functionality.' type: boolean isRequired: type: boolean linkDefinition: oneOf: - $ref: '#/components/schemas/EquipmentSchemaRef' - type: 'null' modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object DateTimeFieldDefinition: description: A datetime field definition for date and time values with timezone support. 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 AssayResultLinkFieldDefinition: description: A schema field definition for linking to assay results. 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: oneOf: - $ref: '#/components/schemas/ResultSchemaRef' - type: 'null' modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object AutomationOutputFileNamedColumnType: description: 'Associates a column name with its data type in an automation output file configuration. Used instead of plain column name strings when the column type must be specified explicitly.' properties: __typename: type: string columnType: description: Type of a column in an output file type: - 'null' - string name: description: Name of a column in an output file type: - 'null' - string type: object OligoConjugateSchemaRef: properties: __typename: type: string id: format: api_id type: string type: object AutomationInputFileConfig: description: 'Defines the configuration for generating input files that drive laboratory automation instruments. An AutomationInputFileConfig specifies how to pull sample data from Benchling (via rowConfigs with LookupConfig), which columns to include, how to format and sort the data, and where to send the generated files (via destinations). The configuration supports data transformations (see AutomationTransformConfig) and customizable file naming through nameTemplateParts. Input generators using this config (see AutomationInputGenerator) produce files in the specified format (delimiter and fileExtension) that can be consumed by liquid handlers, plate readers, and other automated lab equipment.' properties: __typename: type: string columns: description: List of columns for input files generated by this configuration oneOf: - items: type: string type: array - type: 'null' delimiter: description: Delimiter to use in input files generated by this configuration type: - 'null' - string destinations: description: Configurations for destinations for input files generated by this configuration oneOf: - items: $ref: '#/components/schemas/AutomationInputFileDestinationInfo' type: array - type: 'null' fileExtension: description: Extension to use for input files generated by this configuration type: - 'null' - string id: type: string isHidden: description: Whether input generators for this configuration are hidden in the notebook type: - 'null' - boolean name: description: The name of the AutomationInputFileConfig type: - 'null' - string nameTemplateParts: description: Configuration for naming input files generated by this configuration oneOf: - items: $ref: '#/components/schemas/AutomationInputFileNamePart' type: array - type: 'null' rowConfigs: description: Configurations for the rows of the input files generated by this configuration oneOf: - items: $ref: '#/components/schemas/AutomationInputFileRowConfig' type: array - type: 'null' sortColumns: description: List of columns to sort input files generated by this configuration oneOf: - items: type: string type: array - type: 'null' transforms: description: Configurations for transforms for input files generated by this configuration oneOf: - items: $ref: '#/components/schemas/AutomationTransformConfig' type: array - type: 'null' type: object AaPartLinkFieldDefinition: description: A schema field definition for linking to AA parts. 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 part. 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 AntibodyLinkFieldDefinition: description: A schema field definition for linking to Antibodies. 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 Antibody. 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 DuplicateTransformationProperties: description: 'Properties for a DUPLICATE transform, specifying the source column to copy and the name for the new duplicate column.' properties: __typename: type: string columnToDuplicate: description: Name of column to be duplicated type: - 'null' - string newColumnName: description: Name of new column created by duplicating type: - 'null' - string type: object BlobLinkFieldDefinition: description: A schema field definition for linking to blobs (file attachments). 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 MergeTransform: description: 'A data transform that concatenates values from multiple columns into a single output column, separated by a configurable delimiter.' properties: __typename: type: string transformationProperties: description: Additional parameters for this transform oneOf: - $ref: '#/components/schemas/MergeTransformationProperties' - type: 'null' type: description: The type of this transform (MERGE) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object RunSchema: description: 'Defines the structure and automation configuration for a category of Runs in Benchling''s lab automation system. A RunSchema specifies field definitions for run metadata, input generator configurations (see AutomationInputFileConfig) for creating instrument worklists, and output processor configurations (see AutomationOutputFileConfig) for parsing instrument results. Schemas can be linked to an AnalysisTemplate for automated data processing after runs complete. Settings control whether runs can be created from notebooks (allowCreateRunFromNotebook), inserted from the run inbox (allowInsertRunFromInbox), and whether equipment tracking is enabled (shouldRecordEquipment). Each schema is owned by an Organization and has a systemName used for Data Platform integration. RunSchemas define the automation workflow for specific assay types like qPCR, ELISA, or sequencing.' properties: __typename: type: string allowCreateRunFromNotebook: description: Whether new runs belonging to this schema can be created from the notebook type: - 'null' - boolean allowInsertRunFromInbox: description: Whether runs belonging to this schema can be inserted in the notebook from the Run Inbox type: - 'null' - boolean archiveReason: description: If the Run is archived, reason for archiving type: - 'null' - string archived: description: Whether the Run is archived type: boolean automationInputFileConfigs: description: Configurations for automation input generators on this run format: uri type: string automationOutputFileConfigs: description: Configurations for automation output processors on this run format: uri type: string createdAt: format: datetime type: - 'null' - string fieldDefinitions: description: Defines the metadata fields for runs belonging to this schema format: uri type: string id: type: string modifiedAt: description: DateTime the Run Schema was last modified format: datetime type: - 'null' - string name: description: Name of the Run Schema type: string organization: description: Organization the Run Schema belongs to oneOf: - $ref: '#/components/schemas/OrganizationRef' - type: 'null' shouldRecordEquipment: description: Whether runs belonging to this schema should record equipment or not type: boolean systemName: description: 'Name for this schema in the Data Platform. For example, the name of the warehouse table is derived from the systemName.' type: - 'null' - string type: object DnaOligoLinkFieldDefinition: description: A schema field definition for linking to DNA Oligos. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isParent: description: 'Means the link is from a child to a parent DNA Oligo. Important for the registry''s lot-numbering functionality.' type: boolean isRequired: type: boolean linkDefinition: $ref: '#/components/schemas/DnaOligoSchemaRef' description: The linked item must be of this schema. This is required because we do not allow linking to a generic DNA Oligo. modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object SchemaFieldDefinitionUnpaginatedList: additionalProperties: false properties: items: items: $ref: '#/components/schemas/SchemaFieldDefinition' type: array type: object ObjectRef: properties: __typename: type: string id: format: api_id type: string type: object NullFilterTransformationProperties: description: 'Properties for a FILTER transform that filters rows based on null or non-null values in a specified column.' properties: __typename: type: string column: description: Name of column to be filtered type: - 'null' - string type: description: Type of filtering to perform enum: - LT - LE - GE - GT - EQ - NE - ISIN - NOTIN - ISNULL - NOTNULL - null type: - 'null' - string type: object MixtureSchemaRef: properties: __typename: type: string id: format: api_id type: string type: object FilterTransform: description: 'A data transform that removes rows from the file based on column value conditions. Supports null checks, string/number comparisons, and set membership filters.' properties: __typename: type: string transformationProperties: description: Additional parameters for this transform oneOf: - anyOf: - $ref: '#/components/schemas/NullFilterTransformationProperties' - $ref: '#/components/schemas/StringValueFilterTransformationProperties' - $ref: '#/components/schemas/NumberValueFilterTransformationProperties' - $ref: '#/components/schemas/MultipleValuesFilterTransformationProperties' discriminator: propertyName: __typename - type: 'null' type: description: The type of this transform (FILTER) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object PlateShapeTransform: description: 'A data transform that extracts plate-shaped data from a file by locating the well grid at specified coordinates and optionally removing all surrounding cells.' properties: __typename: type: string transformationProperties: description: Additional parameters for this transform oneOf: - $ref: '#/components/schemas/PlateShapeTransformationProperties' - type: 'null' type: description: The type of this transform (PLATE_SHAPE) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object SplitTransform: description: 'A data transform that divides values in a single column into multiple output columns by splitting on a delimiter.' properties: __typename: type: string transformationProperties: description: Additional parameters for this transform oneOf: - $ref: '#/components/schemas/SplitTransformationProperties' - type: 'null' type: description: The type of this transform enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object UnitRef: properties: __typename: type: string id: format: api_id type: string type: object SplitTransformationProperties: description: 'Properties for a SPLIT transform, specifying the column to split, the delimiter to split on, and the names for the resulting output columns.' properties: __typename: type: string column: description: Name of column to be split type: - 'null' - string delimiter: description: Delimiter on which to split column values type: - 'null' - string outputColumnNames: description: Names of columns in which to put the split values oneOf: - items: type: string type: array - type: 'null' type: object PlateShapeTransformationProperties: description: 'Properties for a PLATE_SHAPE transform, specifying the plate schema for expected dimensions, the cell coordinates of well A1, and whether to discard data outside the plate region.' properties: __typename: type: string deleteOtherCells: description: Whether to delete all cells outside of the plate shape data type: - 'null' - boolean firstWellColumnIndex: description: Column index in the file of well A1 type: - 'null' - integer firstWellRowIndex: description: Row index in the file of well A1 type: - 'null' - integer plateSchema: description: API ID of a PlateSchema that defines expected plate dimensions type: - 'null' - string type: object AaSequenceLinkFieldDefinition: description: A schema field definition for linking to AA sequences. properties: __typename: type: string archiveReason: type: - 'null' - string archived: type: boolean createdAt: format: datetime type: - 'null' - string derivationType: enum: - DIRECT - COMPUTED - SNAPSHOT type: string description: type: - 'null' - string id: type: string isMulti: type: boolean isParent: description: 'Means the link is from a child to a parent AA sequence. Important for the registry''s lot-numbering functionality.' type: boolean isRequired: type: boolean linkDefinition: oneOf: - $ref: '#/components/schemas/AaSequenceSchemaRef' - type: 'null' modifiedAt: format: datetime type: - 'null' - string name: type: string systemName: type: string type: object DuplicateTransform: description: A data transform that copies an existing column to a new column with a different name. properties: __typename: type: string transformationProperties: description: Additional parameters for this transform oneOf: - $ref: '#/components/schemas/DuplicateTransformationProperties' - type: 'null' type: description: The type of this transform (DUPLICATE) enum: - ADD_COLUMN - ARITHMETIC - CUSTOM - DUPLICATE - EXTRA_HEADERS - EXTRA_FOOTERS - FILTER - FIND_REPLACE - MERGE - MELT - PLATE_SHAPE - PIVOT - REMOVE_QUOTES - SPLIT - null type: - 'null' - string type: object parameters: modifiedAt.gt: description: Datetime, in RFC 3339 format. Time zone defaults to UTC. Restricts results to those modified after the specified time. e.g. > 2017-04-30. in: query name: modifiedAt.gt schema: format: datetime type: string id.anyOf: description: Restricts results to those matching any of the specified IDs. Comma-separated list. explode: false in: query name: id.anyOf schema: items: type: string maxItems: 100 type: array archived.anyOf: description: If true, returns archived items. If false, returns unarchived items. If both true and false, returns archived and unarchived items. Comma-separated list. explode: false in: query name: archived.anyOf schema: items: type: boolean maxItems: 2 type: array createdAt.lte: description: Datetime, in RFC 3339 format. Time zone defaults to UTC. Restricts results to those created at or before the specified time. e.g. <= 2017-04-30. in: query name: createdAt.lte schema: format: datetime type: string createdAt.gte: description: Datetime, in RFC 3339 format. Time zone defaults to UTC. Restricts results to those created at or after the specified time. e.g. >= 2017-04-30. in: query name: createdAt.gte schema: format: datetime type: string createdAt.gt: description: Datetime, in RFC 3339 format. Time zone defaults to UTC. Restricts results to those created after the specified time. e.g. > 2017-04-30. in: query name: createdAt.gt schema: format: datetime type: string createdAt.lt: description: Datetime, in RFC 3339 format. Time zone defaults to UTC. Restricts results to those created before the specified time. e.g. < 2017-04-30. in: query name: createdAt.lt schema: format: datetime type: string name.anyOf: description: Restricts results to those that match any of the specified names. Case insensitive. Warning - this filter can be non-performant due to case insensitivity. Ensure only one name filter is used at a time. Comma-separated list. explode: false in: query name: name.anyOf schema: items: type: string maxItems: 100 type: array name.anyOf.caseSensitive: description: Restricts results to those that match any of the specified names. Case sensitive. Ensure only one name filter is used at a time. Comma-separated list. explode: false in: query name: name.anyOf.caseSensitive schema: items: type: string maxItems: 100 type: array omit: description: Comma-separated list of top-level fields to omit from each returned item. Cannot overlap with returning. explode: false in: query name: omit schema: items: type: string type: array modifiedAt.gte: description: Datetime, in RFC 3339 format. Time zone defaults to UTC. Restricts results to those modified at or after the specified time. e.g. >= 2017-04-30. in: query name: modifiedAt.gte schema: format: datetime type: string nextToken: description: Token for pagination in: query name: nextToken schema: type: string pageSize: description: Number of results to return. Defaults to 50, maximum of 100. in: query name: pageSize schema: type: integer modifiedAt.lte: description: Datetime, in RFC 3339 format. Time zone defaults to UTC. Restricts results to those modified at or before the specified time. e.g. <= 2017-04-30. in: query name: modifiedAt.lte schema: format: datetime type: string modifiedAt.lt: description: Datetime, in RFC 3339 format. Time zone defaults to UTC. Restricts results to those modified before the specified time. e.g. < 2017-04-30. in: query name: modifiedAt.lt schema: format: datetime type: string archiveReason.anyOf: description: Restricts items to those with any of the specified archive reasons. Use "NOT_ARCHIVED" to filter for unarchived items. Use "ANY_ARCHIVED" to filter for archived items regardless of reason. Use "ANY_ARCHIVED_OR_NOT_ARCHIVED" to return items for both archived and unarchived. Comma-separated list. explode: false in: query name: archiveReason.anyOf schema: items: type: string maxItems: 10 type: array returning: description: Comma-separated list of top-level fields to include in each returned item. Cannot overlap with omit. explode: false in: query name: returning schema: items: type: string type: array responses: TooManyRequests: content: application/problem+json: schema: $ref: '#/components/schemas/GeneralError' description: Too Many Requests BadRequest: content: application/problem+json: schema: $ref: '#/components/schemas/GeneralError' description: Bad Request InternalServerError: content: application/problem+json: schema: $ref: '#/components/schemas/InternalServerError' description: Internal Server Error NotFound: content: application/problem+json: schema: $ref: '#/components/schemas/GeneralError' description: Not Found Forbidden: content: application/problem+json: schema: $ref: '#/components/schemas/GeneralError' description: Forbidden securitySchemes: basicApiKeyAuth: description: Use issued API key for standard access to the API scheme: basic type: http basicClientIdSecretAuth: description: Auth used as part of client credentials OAuth flow prior to receiving a bearer token. scheme: basic type: http oAuth: description: OAuth2 Client Credentials flow intended for service access flows: clientCredentials: scopes: {} tokenUrl: /oauth/token type: oauth2