> This page is for Developer Documentation.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.benchling.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.benchling.com/_mcp/server.

# List AutomationInputFileConfig items

GET https://{tenant_name}.benchling.com/api/v3/run-schema/{run_schema_id}/automation-input-file-configs/items

List AutomationInputFileConfig items.

Reference: https://docs.benchling.com/docs/api/benchling-api/run-schema/automationinputfileconfigs-list

## Authentication

- `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer <token>`, where token is your auth token.

## Request

### Path parameters

- `run_schema_id` (string, required) — ID of the RunSchema.

### Headers

- `EARLY-ACCESS` (string, optional) — Set to true to access beta operations via /api/v3.

## Response

### 200

OK

- `items` (list of AutomationInputFileConfig, optional)

## Errors

### 400 Run Schema Automation Input File Configs List Request Bad Request Error

Bad Request

- `detail` (GeneralErrorDetail, required, nullable)
- `instance` (string, required)
- `status` (integer, required)
- `title` (string, required, nullable)
- `type` (string, required)
- `invalidId` (string, optional)

### 403 Run Schema Automation Input File Configs List Request Forbidden Error

Forbidden

- `detail` (GeneralErrorDetail, required, nullable)
- `instance` (string, required)
- `status` (integer, required)
- `title` (string, required, nullable)
- `type` (string, required)
- `invalidId` (string, optional)

### 404 Run Schema Automation Input File Configs List Request Not Found Error

Not Found

- `detail` (GeneralErrorDetail, required, nullable)
- `instance` (string, required)
- `status` (integer, required)
- `title` (string, required, nullable)
- `type` (string, required)
- `invalidId` (string, optional)

### 429 Run Schema Automation Input File Configs List Request Too Many Requests Error

Too Many Requests

- `detail` (TooManyRequestsErrorBodyDetail, required, nullable)
- `instance` (string, required)
- `status` (integer, required)
- `title` (string, required, nullable)
- `type` (string, required)
- `invalidId` (string, optional)

### 500 Run Schema Automation Input File Configs List Request Internal Server Error

Internal Server Error

- `detail` (InternalServerErrorBodyDetail, required, nullable)
- `instance` (string, required)
- `status` (integer, required)
- `title` (string, required, nullable)
- `type` (string, required)
- `errorId` (string, optional)

## Types

### AutomationInputFileConfig

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.

- `__typename` (string, optional)
- `columns` (list of string, optional, nullable) — List of columns for input files generated by this configuration
- `delimiter` (string, optional, nullable) — Delimiter to use in input files generated by this configuration
- `destinations` (list of AutomationInputFileDestinationInfo, optional, nullable) — Configurations for destinations for input files generated by this configuration
- `fileExtension` (string, optional, nullable) — Extension to use for input files generated by this configuration
- `id` (string, optional)
- `isHidden` (boolean, optional, nullable) — Whether input generators for this configuration are hidden in the notebook
- `name` (string, optional, nullable) — The name of the AutomationInputFileConfig
- `nameTemplateParts` (list of AutomationInputFileNamePart, optional, nullable) — Configuration for naming input files generated by this configuration
- `rowConfigs` (list of AutomationInputFileRowConfig, optional, nullable) — Configurations for the rows of the input files generated by this configuration
- `sortColumns` (list of string, optional, nullable) — List of columns to sort input files generated by this configuration
- `transforms` (list of AutomationTransformConfig, optional, nullable) — Configurations for transforms for input files generated by this configuration

### GeneralErrorDetail

### TooManyRequestsErrorBodyDetail

### InternalServerErrorBodyDetail

### AutomationInputFileDestinationInfo

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.

- `__typename` (string, optional)
- `name` (string, optional, nullable) — Name for this DestinationInfo

### AutomationInputFileNamePart

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.

- `__typename` (string, optional)
- `field` (SchemaFieldDefinitionRef, optional, nullable) — Run schema field for the name of the input file (only present for FIELD type)
- `text` (string, optional, nullable) — Text value for the name of the input file (only present for TEXT type)
- `type` (enum, optional, nullable) — The type of this name template part
  - Allowed values: `CREATED_AT_DATE`, `CREATED_AT_TIME`, `DISPLAY_NAME`, `FIELD`, `RUN_API_ID`, `RUN_ID`, `RUN_SCHEMA_NAME`, `SOURCE_FILE_NAME`, `TEXT`

### AutomationInputFileRowConfig

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.

- `__typename` (string, optional)
- `columns` (list of AutomationInputFileRowConfigColumn, optional, nullable) — Configuration for the columns of the input file
- `destination` (AutomationInputFileDestinationInfo, optional, nullable) — DestinationInfo for the destinations used to generate a set of rows of the input file
- `plateLayout` (PlateLayout, optional, nullable) — PlateLayout to use when generating the input file

### AutomationTransformConfig

### SchemaFieldDefinitionRef

- `__typename` (string, optional)
- `id` (string, optional)

### AutomationInputFileRowConfigColumn

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.

- `__typename` (string, optional)
- `name` (string, optional, nullable) — Name for this column of the input file

### PlateLayout

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.

- `__typename` (string, optional)
- `layoutType` (enum, optional, nullable) — The type of the PlateLayout
  - Allowed values: `COLUMN_INTERLEAVE`, `INTERLEAVE`, `REVERSE_COLUMN_INTERLEAVE`, `REVERSE_INTERLEAVE`, `REVERSE_STAMP_TO_QUADRANTS`, `STAMP`, `STAMP_TO_QUADRANTS`

### AddColumnTransform

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.

- `__typename` (string, optional)
- `transformationProperties` (AddColumnTransformationProperties, optional, nullable) — Additional parameters for this transform
- `type` (enum, optional, nullable) — The type of this transform (ADD_COLUMN)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### ArithmeticTransform

A data transform that performs arithmetic operations between two variables (columns or constants) and writes the result to a new column.

- `__typename` (string, optional)
- `transformationProperties` (ArithmeticTransformationProperties, optional, nullable) — Additional parameters for this transform
- `type` (enum, optional, nullable) — The type of this transform (ARITHMETIC)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### CustomTransform

A data transform that delegates processing to an external Benchling App. The app is identified by its API ID in the transformation properties.

- `__typename` (string, optional)
- `transformationProperties` (CustomTransformationProperties, optional, nullable) — Additional parameters for this transform
- `type` (enum, optional, nullable) — The type of this transform (CUSTOM)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### DuplicateTransform

A data transform that copies an existing column to a new column with a different name.

- `__typename` (string, optional)
- `transformationProperties` (DuplicateTransformationProperties, optional, nullable) — Additional parameters for this transform
- `type` (enum, optional, nullable) — The type of this transform (DUPLICATE)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### ExtraFootersTransform

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.

- `__typename` (string, optional)
- `transformationProperties` (ExtraFootersTransformationProperties, optional, nullable) — Additional parameters for this transform
- `type` (enum, optional, nullable) — The type of this transform (EXTRA_FOOTERS)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### ExtraHeadersTransform

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.

- `__typename` (string, optional)
- `transformationProperties` (ExtraHeadersTransformationProperties, optional, nullable) — Additional parameters for this transform
- `type` (enum, optional, nullable) — The type of this transform (EXTRA_HEADERS)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### FilterTransform

A data transform that removes rows from the file based on column value conditions. Supports null checks, string/number comparisons, and set membership filters.

- `__typename` (string, optional)
- `transformationProperties` (FilterTransformTransformationProperties, optional, nullable) — Additional parameters for this transform
- `type` (enum, optional, nullable) — The type of this transform (FILTER)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### FindReplaceTransform

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.

- `__typename` (string, optional)
- `type` (enum, optional, nullable) — The type of this transform (FIND_REPLACE)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### MeltTransform

A data transform that unpivots wide-format data into long format by converting selected value columns into rows, each identified by a variable name.

- `__typename` (string, optional)
- `transformationProperties` (MeltTransformationProperties, optional, nullable) — Additional parameters for this transform
- `type` (enum, optional, nullable) — The type of this transform (MELT)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### MergeTransform

A data transform that concatenates values from multiple columns into a single output column, separated by a configurable delimiter.

- `__typename` (string, optional)
- `transformationProperties` (MergeTransformationProperties, optional, nullable) — Additional parameters for this transform
- `type` (enum, optional, nullable) — The type of this transform (MERGE)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### PivotTransform

A data transform that reshapes long-format data into wide format by pivoting unique values from a keys column into separate columns.

- `__typename` (string, optional)
- `transformationProperties` (PivotTransformationProperties, optional, nullable) — Additional parameters for this transform
- `type` (enum, optional, nullable) — The type of this transform (PIVOT)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### PlateShapeTransform

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.

- `__typename` (string, optional)
- `transformationProperties` (PlateShapeTransformationProperties, optional, nullable) — Additional parameters for this transform
- `type` (enum, optional, nullable) — The type of this transform (PLATE_SHAPE)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### RemoveQuotesTransform

A data transform that strips quote characters from all values in the file. Takes no additional configuration parameters.

- `__typename` (string, optional)
- `transformationProperties` (map from string to any, optional, nullable) — Additional parameters for this transform - an empty object
- `type` (enum, optional, nullable) — The type of this transform (REMOVE_QUOTES)
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### SplitTransform

A data transform that divides values in a single column into multiple output columns by splitting on a delimiter.

- `__typename` (string, optional)
- `transformationProperties` (SplitTransformationProperties, optional, nullable) — Additional parameters for this transform
- `type` (enum, optional, nullable) — The type of this transform
  - Allowed values: `ADD_COLUMN`, `ARITHMETIC`, `CUSTOM`, `DUPLICATE`, `EXTRA_HEADERS`, `EXTRA_FOOTERS`, `FILTER`, `FIND_REPLACE`, `MERGE`, `MELT`, `PLATE_SHAPE`, `PIVOT`, `REMOVE_QUOTES`, `SPLIT`

### AddColumnTransformationProperties

Properties for an ADD_COLUMN transform, specifying the name of the new column to add.

- `__typename` (string, optional)
- `column` (string, optional, nullable) — The name of the column to be added

### ArithmeticTransformationProperties

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.

- `__typename` (string, optional)
- `firstVariable` (ArithmeticTransformationPropertiesFirstVariable, optional, nullable) — First operand for the arithmetic operation
- `newColumnName` (string, optional, nullable) — Name of the column that will contain the results of the arithmetic operation
- `operator` (string, optional, nullable) — The arithmetic operation to perform: +, -, *, or /
- `secondVariable` (ArithmeticTransformationPropertiesSecondVariable, optional, nullable) — Second operand for the arithmetic operation

### CustomTransformationProperties

Properties for a CUSTOM transform, identifying the Benchling App that performs the transformation via its API ID.

- `__typename` (string, optional)
- `transformId` (string, optional, nullable) — API ID of a Benchling App that performs the transform

### DuplicateTransformationProperties

Properties for a DUPLICATE transform, specifying the source column to copy and the name for the new duplicate column.

- `__typename` (string, optional)
- `columnToDuplicate` (string, optional, nullable) — Name of column to be duplicated
- `newColumnName` (string, optional, nullable) — Name of new column created by duplicating

### ExtraFootersTransformationProperties

Properties for an EXTRA_FOOTERS transform, specifying how many trailing rows to remove from the bottom of the file.

- `__typename` (string, optional)
- `numRowsToRemove` (integer, optional, nullable) — Number of rows to remove from the bottom of the file

### ExtraHeadersTransformationProperties

Properties for an EXTRA_HEADERS transform, specifying the row range that contains non-standard header rows to skip during file processing.

- `__typename` (string, optional)
- `headerRowIndex` (integer, optional, nullable) — Index of the first row of the header
- `lastHeaderRowIndex` (integer, optional, nullable) — Index of the last row of the header. Optional, can be omitted if header is a single row

### FilterTransformTransformationProperties

### MeltTransformationProperties

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.

- `__typename` (string, optional)
- `identifierColumns` (list of string, optional, nullable)
- `newValueColumn` (string, optional, nullable)
- `newVariableColumn` (string, optional, nullable)
- `valueColumns` (list of string, optional, nullable)

### MergeTransformationProperties

Properties for a MERGE transform, specifying the columns to combine, the output column name, and the delimiter placed between merged values.

- `__typename` (string, optional)
- `columnNames` (list of string, optional, nullable) — Names of columns to be merged
- `delimiter` (string, optional, nullable) — Delimiter to put between merged values
- `outputColumnName` (string, optional, nullable) — Name of column to contain merged values

### PivotTransformationProperties

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.

- `__typename` (string, optional)
- `indexColumns` (list of string, optional, nullable)
- `keysColumn` (string, optional, nullable)
- `valuesColumn` (string, optional, nullable)

### PlateShapeTransformationProperties

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.

- `__typename` (string, optional)
- `deleteOtherCells` (boolean, optional, nullable) — Whether to delete all cells outside of the plate shape data
- `firstWellColumnIndex` (integer, optional, nullable) — Column index in the file of well A1
- `firstWellRowIndex` (integer, optional, nullable) — Row index in the file of well A1
- `plateSchema` (string, optional, nullable) — API ID of a WellPlateSchema or MatrixPlateSchema that defines expected plate dimensions

### SplitTransformationProperties

Properties for a SPLIT transform, specifying the column to split, the delimiter to split on, and the names for the resulting output columns.

- `__typename` (string, optional)
- `column` (string, optional, nullable) — Name of column to be split
- `delimiter` (string, optional, nullable) — Delimiter on which to split column values
- `outputColumnNames` (list of string, optional, nullable) — Names of columns in which to put the split values

### ArithmeticTransformationPropertiesFirstVariable

### ArithmeticTransformationPropertiesSecondVariable

### NullFilterTransformationProperties

Properties for a FILTER transform that filters rows based on null or non-null values in a specified column.

- `__typename` (string, optional)
- `column` (string, optional, nullable) — Name of column to be filtered
- `type` (enum, optional, nullable) — Type of filtering to perform
  - Allowed values: `LT`, `LE`, `GE`, `GT`, `EQ`, `NE`, `ISIN`, `NOTIN`, `ISNULL`, `NOTNULL`

### StringValueFilterTransformationProperties

Properties for a FILTER transform that filters rows by comparing a column's string value using equality or inequality.

- `__typename` (string, optional)
- `column` (string, optional, nullable) — Name of column to be filtered
- `type` (enum, optional, nullable) — Type of filtering to perform (EQ or NE)
  - Allowed values: `LT`, `LE`, `GE`, `GT`, `EQ`, `NE`, `ISIN`, `NOTIN`, `ISNULL`, `NOTNULL`
- `value` (string, optional, nullable) — Value to filter on

### NumberValueFilterTransformationProperties

Properties for a FILTER transform that filters rows by comparing a column's numeric value using relational operators (EQ, NE, LE, LT, GE, GT).

- `__typename` (string, optional)
- `column` (string, optional, nullable) — Name of column to be filtered
- `type` (enum, optional, nullable) — Type of filtering to perform (EQ, NE, LE, LT, GE, or GT)
  - Allowed values: `LT`, `LE`, `GE`, `GT`, `EQ`, `NE`, `ISIN`, `NOTIN`, `ISNULL`, `NOTNULL`
- `value` (double, optional, nullable) — Value to filter on

### MultipleValuesFilterTransformationProperties

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.

- `__typename` (string, optional)
- `column` (string, optional, nullable) — Name of column to be filtered
- `type` (enum, optional, nullable) — Type of filtering to perform (ISIN or NOTIN)
  - Allowed values: `LT`, `LE`, `GE`, `GT`, `EQ`, `NE`, `ISIN`, `NOTIN`, `ISNULL`, `NOTNULL`
- `values` (list of string, optional, nullable) — Values to filter on

### ArithmeticTransformColumnVariable

A variable in an arithmetic transform that references values from a named column in the file.

- `__typename` (string, optional)
- `type` (enum, optional, nullable) — COLUMN
  - Allowed values: `CONSTANT`, `COLUMN`
- `value` (string, optional, nullable) — Name of a column that contains values on which to perform the arithmetic operation

### ArithmeticTransformConstantVariable

A variable in an arithmetic transform that holds a fixed numeric constant.

- `__typename` (string, optional)
- `type` (enum, optional, nullable) — CONSTANT
  - Allowed values: `CONSTANT`, `COLUMN`
- `value` (double, optional, nullable) — A constant value on which to perform the arithmetic operation

## Examples

**Response**

```json
{
  "items": [
    {
      "__typename": "__typename",
      "columns": [
        "columns"
      ],
      "delimiter": "delimiter",
      "destinations": [
        {}
      ],
      "fileExtension": "fileExtension",
      "id": "id",
      "isHidden": true,
      "name": "name",
      "nameTemplateParts": [
        {}
      ],
      "rowConfigs": [
        {}
      ],
      "sortColumns": [
        "sortColumns"
      ],
      "transforms": [
        {}
      ]
    }
  ]
}
```

**SDK Code**

```python
import requests

url = "https://{tenant_name}.benchling.com/api/v3/run-schema/run_schema_id/automation-input-file-configs/items"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.json())
```

```javascript
const url = 'https://{tenant_name}.benchling.com/api/v3/run-schema/run_schema_id/automation-input-file-configs/items';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```