How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Benchling Protein API

A Protein is a complex biomolecule entity in Benchling representing immunoglobulins orrelated therapeutic proteins like T-cell receptors. Proteins are defined by an`ProteinFormat` that specifies their structural organization, with actual sequencesprovided in domains (see `ProteinDomain`) and chains (see `ProteinChain`). Proteins support versioningthrough history/fullHistory, allowing tracking of structural changes over time. As registry entities,proteins can have schemas with custom fields, belong to projects and folders, and be linked to studies.

Benchling Protein API is one of 203 APIs that Benchling publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Protein. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, authentication docs, rate-limit docs, and a changelog.

This API exposes 14 operations across 13 paths, and defines 75 schemas. It is described by OpenAPI 3.2.0, at version 2.0.0.

Requests are made against a single base URL, /api/v3.

14 operations 13 paths 75 schemas 7 GET3 PATCH4 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
2.0.0
Base URL
https://{tenant}.benchling.com/api/v2
Authentication
HTTP Basic, HTTP Basic, OAuth 2.0
License
Resource Areas
1

Authentication & Security 3

Benchling Protein API declares 3 security schemes for authenticating requests. It accepts HTTP basic authentication (basicApiKeyAuth). It accepts HTTP basic authentication (basicClientIdSecretAuth). It supports OAuth 2.0 (oAuth) using the clientCredentials flow. By default, every request must be authenticated.

  • basicApiKeyAuth — Use issued API key for standard access to the API
  • basicClientIdSecretAuth — Auth used as part of client credentials OAuth flow prior to receiving a bearer token.
  • oAuth — OAuth2 Client Credentials flow intended for service access

Paths & Operations 14

Across 13 paths, the API surfaces 14 operations — 7 GET, 3 PATCH, 4 POST. Each is listed below with its method, path, parameters, and response codes.

Protein 14

A Protein is a complex biomolecule entity in Benchling representing immunoglobulins or related therapeutic proteins like T-cell receptors. Proteins are defined by an ProteinFormat…

POST
/protein
Create Protein
Protein.Create 1 param body → 201400403404429500
GET
/protein/items
List Protein items
Protein.List 28 params → 200400403404429500
GET
/protein/{protein_id}
Get Protein by ID
Protein.Get 4 params → 200400403404429500
PATCH
/protein/{protein_id}
Update Protein
Protein.Update 2 params body → 200400403404429500
GET
/protein/{protein_id}/authors/items
List Principal items
Protein.authors.List 2 params → 200400403404429500
GET
/protein/{protein_id}/full-history/items
List ProteinVersion items
Protein.fullHistory.List 2 params → 200400403404429500
GET
/protein/{protein_id}/history/items
List ProteinVersion items
Protein.history.List 2 params → 200400403404429500
POST
/protein:batch-create
Batch create Protein
Protein.BatchCreate 1 param body → 201400403404429500
PATCH
/protein:batch-update
Batch update Protein
Protein.BatchUpdate 1 param body → 200400403404429500
POST
/protein:bulk-create
Bulk create Protein
Protein.BulkCreate 1 param body → 202400403404429500
PATCH
/protein:bulk-update
Bulk update Protein
Protein.BulkUpdate 1 param body → 202400403404429500
POST
/proteins:bulk-create-and-register-proteins-and-components
Create and register proteins and components
ProteinsAndComponents.BulkCreate 1 param body → 202400403404429500
GET
/tasks/bulk-create-and-register-proteins-and-components/{task_id}
Get bulk-create-and-register-proteins-and-components task status
BulkCreateAndRegisterProteinsAndComponentsTask.Get 2 params → 200400403404429500
GET
/tasks/bulk-create-and-register-proteins-and-components/{task_id}/results
Get bulk-create-and-register-proteins-and-components task results
BulkCreateAndRegisterProteinsAndComponentsResults.Get 2 params → 200400403404429500

Schemas 75

The contract defines 75 schemas that model the data the API accepts and returns. The most detailed are IProtein (22 properties), LegacyAppInstallation (17 properties), UpdateProteinInputWithPathParams (16 properties), UpdateProteinInput (15 properties). Each schema is shown below with its type and property counts.

ProteinFormatChainPosition
object
Defines each instance of a polypeptide chain within a ProteinFormat, specifying the chain type and its constituent domains. Each chain position has a unique re…
4 properties
ProteinFormatRef
object
2 properties
ProjectRef
object
2 properties
AppInstallation
object
Represents an installed Benchling App on a tenant, created from an AppDefinitionVersion. App installations store tenant-specific configuration values and featu…
10 properties
CustomField
object
A name-value pair for storing additional metadata on objects that support custom fields. CustomFields provide a flexible way to attach arbitrary string data to…
3 properties
User
object
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 withi…
9 properties
SchemaFieldValue
object
Represents a field value on a schematized object, pairing a fieldDefinition (describing the field's type and constraints) with its actual value (a BenchlingVal…
5 properties
AppConfigWorkflowTaskSchemaOutput
object
Defines the output field structure for a workflow task schema configuration.
2 properties
ResourceAppConfigSpec
object
Specifies that an app configuration field should reference a Benchling object instance. The type field identifies the kind of object required, matching the Ben…
3 properties
AaSequenceRef
object
2 properties
DateTimeValue
object
A type that represents datetime values.
2 properties
RegistrationOrigin
object
Captures the provenance of an entity's registration into the registry. The originEntry links to the DocumentLike (typically an entry or notebook) from which th…
3 properties
FolderRef
object
2 properties
FloatAppConfigSpec
object
Specifies that an app configuration field should accept a floating-point number.
3 properties
WorkflowTaskSchemaAppConfigSpec
object
Specifies that an app configuration field should reference a workflow task schema. Kept separate from SchemaAppConfigSpec because it supports output field defi…
4 properties
EntitySchemaAppConfigSpec
object
Specifies that an app configuration field should reference an entity schema. Kept separate from SchemaAppConfigSpec because it carries a subtype constraint.
4 properties
AppConfigFieldDefinition
object
Defines a field within an app configuration that references schema fields. Specifies the field name, type, whether it accepts multiple values, and whether it i…
7 properties
JsonValue
object
A type that represents JSON values.
2 properties
TextAndUrlValue
object
A type that represents text (string) values with an associated URL.
3 properties
SchemaAppConfigSpec
object
Specifies that an app configuration field should reference one of the schema types that share a common structure: containerschema, plateschema, locationschema,…
4 properties
ProteinFormatDomainPosition
object
Defines a domain position within a1 ProteinFormat, specifying the domain type and identity of each physical domain in the protein format. Each domain position…
4 properties
ProteinChain
object
Represents a polypeptide chain within an Protein, containing the domain composition. Each chain has a computed label derived from the format.
6 properties
JsonAppConfigSpec
object
Specifies that an app configuration field should accept a JSON value.
2 properties
AnyType
CanvasFeatureSpec
object
Defines a canvas feature for a Benchling App, which provides an embedded UI surface within entries or templates. Canvases allow apps to render custom interacti…
4 properties
ObjectLinkValue
object
A type that represents links to other objects.
2 properties
UpdateProteinInput
object
15 properties
CreateProteinInput
object
13 properties 5 required
InternalServerError
object
6 properties 5 required
DecimalValue
object
A type that represents decimal value as strings.
3 properties
EntitySchemaRef
object
2 properties
ProteinDomain
object
Represents a domain within an Protein, containing the actual amino acid sequence for a specific label. Unlike ProteinFormatDomain which is a template, ProteinD…
5 properties
BooleanAppConfigSpec
object
Specifies that an app configuration field should accept a boolean value.
2 properties
PrincipalRef
object
2 properties
TextAppConfigSpec
object
Specifies that an app configuration field should accept a text string.
3 properties
RegistryRef
object
2 properties
SchemaFieldDefinitionRef
object
2 properties
ObjectLinkListValue
object
A type that represents a list of links to other objects.
2 properties
LegacyAppInstallation
object
Represents a legacy (pre-App Store) Benchling App installation on a tenant. Legacy apps are configured directly with webhook URLs and configuration specs rathe…
17 properties
DateAppConfigSpec
object
Specifies that an app configuration field should accept a date value.
2 properties
AppMessageSubscription
object
Represents an app's subscription to a specific event type, specifying the event type and how notifications should be delivered (see DeliveryMethod).
3 properties
DateValue
object
A type that represents date values.
2 properties
DropdownAppConfigSpec
object
Specifies that an app configuration field should be a dropdown with predefined options.
3 properties
ArrayAppConfigSpec
object
Specifies that an app configuration field should accept an array of values.
5 properties
BooleanValue
object
A type that represents boolean values.
2 properties
PrincipalUnpaginatedList
object
1 property
AssayRunFeatureSpec
object
Defines an assay run feature for a Benchling App, allowing the app to process or generate lab automation run data.
3 properties
AppHomepageFeatureSpec
object
Defines a homepage feature for a Benchling App, providing a dedicated landing page within the Benchling application for the app's functionality.
3 properties
Principal
object
ProteinVersion
object
A historical snapshot of an Protein at a specific point in time, preserving the complete structural state including domains, chains, and HELM notation. Protein…
11 properties
BulkImport
object
1 property 1 required
DocumentLikeRef
object
2 properties
AssayRunFeatureValue
object
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…
3 properties
ArrayAppConfigOption
object
A config option nested within an array-type app configuration field. Structurally identical to AppConfigOption — it has a name and a configSpec — but its confi…
4 properties
ProteinPaginatedList
object
2 properties
ProteinVersionRef
object
2 properties
IntegerValue
object
A type that represents integer values.
2 properties
ProteinVersionUnpaginatedList
object
1 property
GeneralError
object
5 properties 5 required
ServicePrincipal
object
Represents a non-human identity used for system integrations and automated processes within Benchling. Service principals act as the identity for service accou…
4 properties
ProteinDomainInput
object
2 properties 2 required
UpdateProteinInputWithPathParams
object
16 properties 1 required
FieldValueInput
object
1 property 1 required
Protein
ProteinChainInput
object
2 properties 2 required
IProtein
object
22 properties
AsyncTaskLink
object
2 properties
ArrayValue
object
A type that represents a list of BenchlingValues, used for multi-value cells (e.g. alias columns).
2 properties
IntegerAppConfigSpec
object
Specifies that an app configuration field should accept an integer value.
3 properties
AppConfigOption
object
Defines a configuration option in an app's configuration schema. Each option has a name, optional description, and a configSpec defining the expected value typ…
4 properties
AppConfigDropdownOption
object
Defines an option within a dropdown-type app configuration field.
4 properties
ObjectRef
object
2 properties
TextValue
object
A type that represents text (string) values.
2 properties
DateTimeAppConfigSpec
object
Specifies that an app configuration field should accept a datetime value.
2 properties
SecureTextAppConfigSpec
object
Specifies that an app configuration field should accept secure (encrypted) text. Used for sensitive data like API keys or credentials.
2 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

benchling-protein-api-openapi.yml Raw ↑

Other APIs Benchling publishes across the network.

Benchling AA Sequences API
Benchling Apps API
Benchling Assay Results API
Benchling Assay Runs API
Benchling Audit API
Benchling Authentication API
Benchling Blobs API
Benchling Boxes API
Benchling Codon Usage Tables API
Benchling Connect API
Benchling Containers API
Benchling Custom Entities API
Where this information came from

This is an independent, third-party profile of Benchling Protein API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.