Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/benchling-requestv2submission-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
title: Benchling Request V2 Submission API
version: 2.0.0
description: 'A workflow request submitted from a `RequestV2Definition` (known as "Request Template" in the UI).
When a request is submitted (status transitions to SENT), a `WorkflowTaskGroup` is automatically
created to fulfill the request, containing tasks defined by the template''s workflow task schema.
Requests are authored in a `Document` and stored within `Folder`s. The `status` field tracks
the request lifecycle: requests start as DRAFT while being composed, become SENT when submitted,
and transition to FULFILLED when all associated workflow tasks reach terminal status. Requests
can also be DISCARDED (before submission) or CANCELLED (after submission). Users can
be added as `watchers` to receive notifications about request status changes. Requests can be
linked to `Study` entities for research coordination (see `Studyable` interface).'
servers:
- url: /api/v3
security:
- oAuth: []
- basicApiKeyAuth: []
tags:
- description: 'A workflow request submitted from a `RequestV2Definition` (known as "Request Template" in the UI).
When a request is submitted (status transitions to SENT), a `WorkflowTaskGroup` is automatically
created to fulfill the request, containing tasks defined by the template''s workflow task schema.
Requests are authored in a `Document` and stored within `Folder`s. The `status` field tracks
the request lifecycle: requests start as DRAFT while being composed, become SENT when submitted,
and transition to FULFILLED when all associated workflow tasks reach terminal status. Requests
can also be DISCARDED (before submission) or CANCELLED (after submission). Users can
be added as `watchers` to receive notifications about request status changes. Requests can be
linked to `Study` entities for research coordination (see `Studyable` interface).'
name: RequestV2Submission
x-bnch-organization: Benchling
paths:
/request-v2-submission/items:
get:
description: List RequestV2Submission items.
operationId: RequestV2Submission.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/RequestV2SubmissionPaginatedList'
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 RequestV2Submission items
tags:
- RequestV2Submission
x-bnch-rate-limit-tier: 4
/request-v2-submission/{request_v2_submission_id}:
get:
description: Get a single RequestV2Submission by ID.
operationId: RequestV2Submission.Get
parameters:
- description: ID of the RequestV2Submission.
in: path
name: request_v2_submission_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/RequestV2Submission'
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 RequestV2Submission by ID
tags:
- RequestV2Submission
x-bnch-rate-limit-tier: 5
/request-v2-submission/{request_v2_submission_id}/authors/items:
get:
description: List Principal items.
operationId: RequestV2Submission.authors.List
parameters:
- description: ID of the RequestV2Submission.
in: path
name: request_v2_submission_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/PrincipalUnpaginatedList'
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 Principal items
tags:
- RequestV2Submission
x-bnch-rate-limit-tier: 4
components:
schemas:
LegacyAppInstallation:
description: 'Represents a legacy (pre-App Store) Benchling App installation on a tenant. Legacy apps
are configured directly with webhook URLs and configuration specs rather than through
app definition versions. This type is maintained for backward compatibility with older
app integrations. For new apps, see `AppInstallation`.'
properties:
__typename:
type: string
archiveReason:
type:
- 'null'
- string
archived:
type: boolean
configurationSpecs:
items:
$ref: '#/components/schemas/AppConfigOption'
type: array
configurationValues:
format: uri
type: string
createdAt:
format: datetime
type:
- 'null'
- string
creator:
oneOf:
- $ref: '#/components/schemas/PrincipalRef'
- type: 'null'
description:
type:
- 'null'
- string
featureSpecs:
items:
anyOf:
- $ref: '#/components/schemas/CanvasFeatureSpec'
- $ref: '#/components/schemas/AssayRunFeatureSpec'
- $ref: '#/components/schemas/AppHomepageFeatureSpec'
description: Union of CanvasFeatureSpec, AssayRunFeatureSpec, AppHomepageFeatureSpec
discriminator:
propertyName: __typename
type: array
featureValues:
items:
$ref: '#/components/schemas/AssayRunFeatureValue'
type: array
id:
type: string
messageSubscriptions:
items:
$ref: '#/components/schemas/AppMessageSubscription'
type: array
modifiedAt:
format: datetime
type:
- 'null'
- string
name:
type: string
publicKey:
type:
- 'null'
- string
versionNumber:
type:
- 'null'
- string
webhookUrl:
type:
- 'null'
- string
type: object
JsonAppConfigSpec:
description: Specifies that an app configuration field should accept a JSON value.
properties:
__typename:
type: string
requiredConfig:
type:
- 'null'
- boolean
type: object
DateAppConfigSpec:
description: Specifies that an app configuration field should accept a date value.
properties:
__typename:
type: string
requiredConfig:
type:
- 'null'
- boolean
type: object
CanvasFeatureSpec:
description: 'Defines a canvas feature for a Benchling App, which provides an embedded UI surface within
entries or templates. Canvases allow apps to render custom interactive content.'
properties:
__typename:
type: string
featureId:
type: string
locations:
oneOf:
- items:
enum:
- ENTRY
- ENTRY_TEMPLATE
- APP_HOME
type: string
type: array
- type: 'null'
name:
type: string
type: object
AppMessageSubscription:
description: 'Represents an app''s subscription to a specific event type, specifying the event type and
how notifications should be delivered (see `DeliveryMethod`).'
properties:
__typename:
type: string
deliveryMethod:
enum:
- WEBHOOK
- WEBHOOK_INTERNAL
type: string
type:
enum:
- V2_BETA_CANVAS_CREATED
- V2_CANVAS_CREATED
- V2_CANVAS_USER_INTERACTED
- V2_CANVAS_INITIALIZED
- V2_APP_ACTIVATE_REQUESTED
- V2_APP_DEACTIVATED
- V2_APP_INSTALLED
- V2_BETA_APP_CONFIGURATION_UPDATED
- V2_ASSAY_RUN_CREATED
- V2_ASSAY_RUN_UPDATED_FIELDS
- V2_ENTITY_REGISTERED
- V2_ENTRY_CREATED
- V2_ENTRY_UPDATED_FIELDS
- V2_ENTRY_UPDATED_REVIEW_RECORD
- V2_REQUEST_CREATED
- V2_REQUEST_UPDATED_FIELDS
- V2_REQUEST_UPDATED_STATUS
- V2_WORKFLOW_TASK_GROUP_CREATED
- V2_WORKFLOW_TASK_GROUP_MAPPING_COMPLETED
- V2_WORKFLOW_TASK_GROUP_UPDATED_WATCHERS
- V2_WORKFLOW_TASK_CREATED
- V2_WORKFLOW_TASK_UPDATED_ASSIGNEE
- V2_WORKFLOW_TASK_UPDATED_SCHEDULED_ON
- V2_WORKFLOW_TASK_UPDATED_STATUS
- V2_WORKFLOW_TASK_UPDATED_FIELDS
- V2_WORKFLOW_OUTPUT_CREATED
- V2_WORKFLOW_OUTPUT_UPDATED_FIELDS
- V2_AUTOMATION_FILE_TRANSFORM_UPDATED_STATUS_RUNNING
- V2_AUTOMATION_FILE_TRANSFORM_UPDATED_STATUS_PENDING
- V2_AUTOMATION_FILE_TRANSFORM_UPDATED_STATUS_SUCCEEDED
- V2_AUTOMATION_FILE_TRANSFORM_UPDATED_STATUS_FAILED
- V3_CUSTOM_ENTITY_CREATED
- V3_CUSTOM_ENTITY_UPDATED
- V3_DNA_OLIGO_CREATED
- V3_DNA_OLIGO_UPDATED
- V3_DNA_SEQUENCE_CREATED
- V3_DNA_SEQUENCE_UPDATED
- V3_ENTRY_CREATED
- V3_PROJECT_CREATED
- V3_PROJECT_UPDATED
- V3_RNA_OLIGO_CREATED
- V3_RNA_OLIGO_UPDATED
- V3_RNA_SEQUENCE_CREATED
- V3_RNA_SEQUENCE_UPDATED
- V3_RUN_CREATED
type: string
type: object
RequestV2Submission:
description: 'A workflow request submitted from a `RequestV2Definition` (known as "Request Template" in the UI).
When a request is submitted (status transitions to SENT), a `WorkflowTaskGroup` is automatically
created to fulfill the request, containing tasks defined by the template''s workflow task schema.
Requests are authored in a `Document` and stored within `Folder`s. The `status` field tracks
the request lifecycle: requests start as DRAFT while being composed, become SENT when submitted,
and transition to FULFILLED when all associated workflow tasks reach terminal status. Requests
can also be DISCARDED (before submission) or CANCELLED (after submission). Users can
be added as `watchers` to receive notifications about request status changes. Requests can be
linked to `Study` entities for research coordination (see `Studyable` interface).'
properties:
__typename:
type: string
archivableParent:
oneOf:
- $ref: '#/components/schemas/FolderRef'
- type: 'null'
archiveDatetime:
format: datetime
type:
- 'null'
- string
archiveReason:
type:
- 'null'
- string
archiveUser:
oneOf:
- $ref: '#/components/schemas/PrincipalRef'
- type: 'null'
archived:
type: boolean
authors:
description: The authors of the request. By default, this is set to the creator.
oneOf:
- format: uri
type: string
- type: 'null'
createdAt:
format: datetime
type:
- 'null'
- string
creator:
$ref: '#/components/schemas/PrincipalRef'
definition:
$ref: '#/components/schemas/RequestV2DefinitionRef'
description: The configuration model for the request submission.
displayId:
type:
- 'null'
- string
folder:
$ref: '#/components/schemas/FolderRef'
id:
type: string
modifiedAt:
format: datetime
type:
- 'null'
- string
name:
type: string
status:
description: The first-class status of the request. Once submitted, this status is an aggregation of task statuses.
enum:
- DRAFT
- SENT
- DISCARDED
- CANCELLED
- FULFILLED
type: string
workflowTaskGroup:
description: The task group created to fulfill the request.
oneOf:
- $ref: '#/components/schemas/WorkflowTaskGroupRef'
- type: 'null'
type: object
DropdownAppConfigSpec:
description: Specifies that an app configuration field should be a dropdown with predefined options.
properties:
__typename:
type: string
options:
oneOf:
- items:
$ref: '#/components/schemas/AppConfigDropdownOption'
type: array
- type: 'null'
requiredConfig:
type:
- 'null'
- boolean
type: object
ArrayAppConfigSpec:
description: Specifies that an app configuration field should accept an array of values.
properties:
__typename:
type: string
elementDefinition:
description: Defines the named config options allowed within this array and their type constraints.
items:
$ref: '#/components/schemas/ArrayAppConfigOption'
type: array
maxElements:
description: Maximum number of elements allowed in the array (1-500); null means no maximum.
type:
- 'null'
- integer
minElements:
description: Minimum number of elements allowed in the array (0-500); null means no minimum.
type:
- 'null'
- integer
requiredConfig:
type:
- 'null'
- boolean
type: object
PrincipalUnpaginatedList:
additionalProperties: false
properties:
items:
items:
$ref: '#/components/schemas/Principal'
type: array
type: object
AppInstallation:
description: 'Represents an installed Benchling App on a tenant, created from an `AppDefinitionVersion`.
App installations store tenant-specific configuration values and feature bindings. As a
Principal, app installations can be attributed as actors for API operations and auditing.'
properties:
__typename:
type: string
archiveReason:
type:
- 'null'
- string
archived:
type: boolean
configurationValues:
format: uri
type: string
createdAt:
format: datetime
type:
- 'null'
- string
creator:
oneOf:
- $ref: '#/components/schemas/PrincipalRef'
- type: 'null'
featureValues:
items:
$ref: '#/components/schemas/AssayRunFeatureValue'
type: array
id:
type: string
modifiedAt:
format: datetime
type:
- 'null'
- string
name:
type: string
type: object
ServicePrincipal:
description: 'Represents a non-human identity used for system integrations and automated processes
within Benchling. Service principals act as the identity for service accounts that
perform actions via APIs or background processes without human intervention. Unlike
`User`, which represents a human user, ServicePrincipal is used when an integration
or automated system needs to be attributed as the actor for auditing and attribution
purposes. Service principals implement the Principal interface, allowing them to
appear as creators or actors on domain objects. Also known as "service account" in
some contexts.'
properties:
__typename:
type: string
id:
type: string
modifiedAt:
format: datetime
type:
- 'null'
- string
name:
type:
- 'null'
- string
type: object
AssayRunFeatureSpec:
description: 'Defines an assay run feature for a Benchling App, allowing the app to process or generate
lab automation run data.'
properties:
__typename:
type: string
featureId:
type: string
name:
type: string
type: object
User:
description: 'Represents a human user in Benchling who can log in, perform actions, and own data.
Users belong to one or more Organizations and may be members of Teams within those
organizations. As an Owner, users can own Projects, Folders, and other resources.
As a Principal, users can be assigned as reviewers, authors, or collaborators on
various items. Users have attributes like email and username for identification.
Users are distinct from `ServicePrincipal`, which represents non-human service
accounts used for integrations.'
properties:
__typename:
type: string
createdAt:
format: datetime
type: string
email:
type: string
id:
type: string
lastSeen:
format: datetime
type:
- 'null'
- string
modifiedAt:
format: datetime
type: string
name:
type:
- 'null'
- string
status:
enum:
- ACTIVE
- SUSPENDED
type: string
username:
type: string
type: object
AppHomepageFeatureSpec:
description: 'Defines a homepage feature for a Benchling App, providing a dedicated landing page within
the Benchling application for the app''s functionality.'
properties:
__typename:
type: string
featureId:
type: string
name:
type: string
type: object
Principal:
anyOf:
- $ref: '#/components/schemas/AppInstallation'
- $ref: '#/components/schemas/LegacyAppInstallation'
- $ref: '#/components/schemas/ServicePrincipal'
- $ref: '#/components/schemas/User'
discriminator:
propertyName: __typename
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
AppConfigWorkflowTaskSchemaOutput:
description: Defines the output field structure for a workflow task schema configuration.
properties:
__typename:
type: string
fieldDefinitions:
oneOf:
- items:
$ref: '#/components/schemas/AppConfigFieldDefinition'
type: array
- type: 'null'
type: object
ResourceAppConfigSpec:
description: 'Specifies that an app configuration field should reference a Benchling object instance.
The type field identifies the kind of object required, matching the BenchlingAppType
values used in app manifests (e.g. dna_sequence, folder, registry). Covers all instance
reference types with no additional spec constraints beyond requiredConfig. For schema
references use SchemaAppConfigSpec or EntitySchemaAppConfigSpec.'
properties:
__typename:
type: string
requiredConfig:
type:
- 'null'
- boolean
type:
enum:
- BOX_SCHEMA
- CONTAINER_SCHEMA
- ENTRY_SCHEMA
- LEGACY_REQUEST_SCHEMA
- LOCATION_SCHEMA
- PLATE_SCHEMA
- RESULT_SCHEMA
- RUN_SCHEMA
- WORKFLOW_TASK_SCHEMA
- AA_SEQUENCE
- ASSAY_RESULT
- ASSAY_RUN
- AUTOMATION_INPUT_GENERATOR
- AUTOMATION_OUTPUT_PROCESSOR
- BLOB
- BOX
- CONTAINER
- CUSTOM_ENTITY
- DNA_ALIGNMENT
- DNA_OLIGO
- DNA_SEQUENCE
- DROPDOWN
- DROPDOWN_OPTION
- ENTRY
- FIELD
- FOLDER
- LEGACY_REQUEST
- LOCATION
- MIXTURE
- MOLECULE
- PLATE
- PROJECT
- REGISTRY
- RNA_OLIGO
- RNA_SEQUENCE
- WORKFLOW_TASK_STATUS
- WORKLIST
- null
type:
- 'null'
- string
type: object
RequestV2DefinitionRef:
properties:
__typename:
type: string
id:
format: api_id
type: string
type: object
IntegerAppConfigSpec:
description: Specifies that an app configuration field should accept an integer value.
properties:
__typename:
type: string
enum:
description: Optional enum constraint — if present, the value must be one of these integers.
oneOf:
- items:
type: integer
type: array
- type: 'null'
requiredConfig:
type:
- 'null'
- boolean
type: object
AppConfigOption:
description: 'Defines a configuration option in an app''s configuration schema. Each option has a name,
optional description, and a configSpec defining the expected value type and validation.'
properties:
__typename:
type: string
configSpec:
anyOf:
- $ref: '#/components/schemas/BooleanAppConfigSpec'
- $ref: '#/components/schemas/IntegerAppConfigSpec'
- $ref: '#/components/schemas/FloatAppConfigSpec'
- $ref: '#/components/schemas/TextAppConfigSpec'
- $ref: '#/components/schemas/SecureTextAppConfigSpec'
- $ref: '#/components/schemas/DateAppConfigSpec'
- $ref: '#/components/schemas/DateTimeAppConfigSpec'
- $ref: '#/components/schemas/JsonAppConfigSpec'
- $ref: '#/components/schemas/ArrayAppConfigSpec'
- $ref: '#/components/schemas/DropdownAppConfigSpec'
- $ref: '#/components/schemas/EntitySchemaAppConfigSpec'
- $ref: '#/components/schemas/WorkflowTaskSchemaAppConfigSpec'
- $ref: '#/components/schemas/SchemaAppConfigSpec'
- $ref: '#/components/schemas/ResourceAppConfigSpec'
description: Union of BooleanAppConfigSpec, IntegerAppConfigSpec, FloatAppConfigSpec, TextAppConfigSpec, SecureTextAppConfigSpec, DateAppConfigSpec, DateTimeAppConfigSpec, JsonAppConfigSpec, ArrayAppConfigSpec, DropdownAppConfigSpec, EntitySchemaAppConfigSpec, WorkflowTaskSchemaAppConfigSpec, SchemaAppConfigSpec, ResourceAppConfigSpec
discriminator:
propertyName: __typename
description:
type:
- 'null'
- string
name:
type: string
type: object
BooleanAppConfigSpec:
description: Specifies that an app configuration field should accept a boolean value.
properties:
__typename:
type: string
requiredConfig:
type:
- 'null'
- boolean
type: object
PrincipalRef:
properties:
__typename:
type: string
id:
format: api_id
type: string
type: object
TextAppConfigSpec:
description: Specifies that an app configuration field should accept a text string.
properties:
__typename:
type: string
enum:
description: Optional enum constraint — if present, the value must be one of these strings.
oneOf:
- items:
type: string
type: array
- type: 'null'
requiredConfig:
type:
- 'null'
- boolean
type: object
FolderRef:
properties:
__typename:
type: string
id:
format: api_id
type: string
type: object
FloatAppConfigSpec:
description: Specifies that an app configuration field should accept a floating-point number.
properties:
__typename:
type: string
enum:
description: Optional enum constraint — if present, the value must be one of these floats.
oneOf:
- items:
type: number
type: array
- type: 'null'
requiredConfig:
type:
- 'null'
- boolean
type: object
AssayRunFeatureValue:
description: 'Links an app''s assay run feature to a specific resource (typically a run schema) on a
tenant. The featureId identifies the feature from the app definition, and resourceId
references the tenant-specific resource it''s bound to.'
properties:
__typename:
type: string
featureId:
description: Developer-specified feature ID as defined in the app manifest / app definition version
type: string
resourceId:
type:
- 'null'
- string
type: object
WorkflowTaskGroupRef:
properties:
__typename:
type: string
id:
format: api_id
type: string
type: object
AppConfigDropdownOption:
description: Defines an option within a dropdown-type app configuration field.
properties:
__typename:
type: string
description:
type:
- 'null'
- string
name:
type: string
requiredConfig:
type:
- 'null'
- boolean
type: object
WorkflowTaskSchemaAppConfigSpec:
description: 'Specifies that an app configuration field should reference a workflow task schema.
Kept separate from SchemaAppConfigSpec because it supports output field definitions.'
properties:
__typename:
type: string
fieldDefinitions:
oneOf:
- items:
$ref: '#/components/schemas/AppConfigFieldDefinition'
type: array
- type: 'null'
output:
description: Output field definitions for the workflow task schema.
oneOf:
- $ref: '#/components/schemas/AppConfigWorkflowTaskSchemaOutput'
- type: 'null'
requiredConfig:
type:
- 'null'
- boolean
type: object
ArrayAppConfigOption:
description: 'A config option nested within an array-type app configuration field. Structurally
identical to AppConfigOption — it has a name and a configSpec — but its configSpec
accepts the same config types as the top level except nested arrays (see
ArrayAppConfigElementSpec).'
properties:
__typename:
type: string
configSpec:
anyOf:
- $ref: '#/components/schemas/BooleanAppConfigSpec'
- $ref: '#/components/schemas/IntegerAppConfigSpec'
- $ref: '#/components/schemas/FloatAppConfigSpec'
- $ref: '#/components/schemas/TextAppConfigSpec'
- $ref: '#/components/schemas/SecureTextAppConfigSpec'
- $ref: '#/components/schemas/DateAppConfigSpec'
- $ref: '#/components/schemas/DateTimeAppConfigSpec'
- $ref: '#/components/schemas/JsonAppConfigSpec'
- $ref: '#/components/schemas/DropdownAppConfigSpec'
- $ref: '#/components/schemas/EntitySchemaAppConfigSpec'
- $ref: '#/components/schemas/WorkflowTaskSchemaAppConfigSpec'
- $ref: '#/components/schemas/SchemaAppConfigSpec'
- $ref: '#/components/schemas/ResourceAppConfigSpec'
description: Union of BooleanAppConfigSpec, IntegerAppConfigSpec, FloatAppConfigSpec, TextAppConfigSpec, SecureTextAppConfigSpec, DateAppConfigSpec, DateTimeAppConfigSpec, JsonAppConfigSpec, DropdownAppConfigSpec, EntitySchemaAppConfigSpec, WorkflowTaskSchemaAppConfigSpec, SchemaAppConfigSpec, ResourceAppConfigSpec
discriminator:
propertyName: __typename
description:
type:
- 'null'
- string
name:
type: string
type: object
EntitySchemaAppConfigSpec:
description: 'Specifies that an app configuration field should reference an entity schema.
Kept separate from SchemaAppConfigSpec because it carries a subtype constraint.'
properties:
__typename:
type: string
fieldDefinitions:
oneOf:
- items:
$ref: '#/components/schemas/AppConfigFieldDefinition'
type: array
- type: 'null'
requiredConfig:
type:
- 'null'
- boolean
subtype:
description: 'Optional subtype constraint — if present, the referenced schema must be of this
entity type (e.g. DNA_SEQUENCE, AA_SEQUENCE).'
enum:
- AA_SEQUENCE
- CUSTOM_ENTITY
- DNA_OLIGO
- DNA_SEQUENCE
- MIXTURE
- MOLECULE
- RNA_OLIGO
- RNA_SEQUENCE
- null
type:
- 'null'
- string
type: object
AppConfigFieldDefinition:
description: 'Defines a field within an app configuration that references schema fields. Specifies the
field name, type, whether it accepts multiple values, and whether
# --- truncated at 32 KB (42 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/benchling/refs/heads/main/openapi/benchling-requestv2submission-api-openapi.yml