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 Entry API

An Entry is the core document type in Benchling's Electronic Lab Notebook (ELN), usedby scientists to record experimental work and observations. Entries are organized intosections (days) containing various content types such as text, tables, file attachments,and structured data tables for results. Entries support rich collaboration featuresincluding authorship tracking, review workflows (see `Review` and `ReviewProcess`),access control through Projects and Folders, and can be linked to Studies. Entries mayoptionally conform to an `EntrySchema` that defines custom fields. They can be createdfrom scratch or from an `EntryTemplate` to ensure consistent structure. Entry mutationendpoints are currently in closed LA.

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

Tagged areas include Entry. 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 11 operations across 10 paths, and defines 168 schemas. It is described by OpenAPI 3.2.0, at version 2.0.0.

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

11 operations 10 paths 168 schemas 5 GET3 PATCH3 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 Entry 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 11

Across 10 paths, the API surfaces 11 operations — 5 GET, 3 PATCH, 3 POST. Each is listed below with its method, path, parameters, and response codes.

Entry 11

An Entry is the core document type in Benchling's Electronic Lab Notebook (ELN), used by scientists to record experimental work and observations. Entries are organized into sectio…

POST
/entry
Create Entry
Entry.Create 1 param body → 201400403404429500
GET
/entry/items
List Entry items
Entry.List 24 params → 200400403404429500
GET
/entry/{entry_id}
Get Entry by ID
Entry.Get 4 params → 200400403404429500
PATCH
/entry/{entry_id}
Update Entry
Entry.Update 2 params body → 200400403404429500
GET
/entry/{entry_id}/applicable-review-processes/items
List ReviewProcess items
Entry.applicableReviewProcesses.List 2 params → 200400403404429500
GET
/entry/{entry_id}/authors/items
List Principal items
Entry.authors.List 2 params → 200400403404429500
GET
/entry/{entry_id}/parts/items
List DocumentPart items
Entry.parts.List 4 params → 200400403404429500
POST
/entry:batch-create
Batch create Entry
Entry.BatchCreate 1 param body → 201400403404429500
PATCH
/entry:batch-update
Batch update Entry
Entry.BatchUpdate 1 param body → 200400403404429500
POST
/entry:bulk-create
Bulk create Entry
Entry.BulkCreate 1 param body → 202400403404429500
PATCH
/entry:bulk-update
Bulk update Entry
Entry.BulkUpdate 1 param body → 202400403404429500

Schemas 168

The contract defines 168 schemas that model the data the API accepts and returns. The most detailed are IOligoDuplex (25 properties), IDnaSequence (23 properties), IOligoConjugate (23 properties), IProtein (22 properties). Each schema is shown below with its type and property counts.

EntryCreatedWebhookV3
Message body of a v3.entry.created event.
AaAnnotation
object
Represents an annotated region on an amino acid sequence (AaSequence). Annotations mark functional domains, binding sites, post-translational modifications, en…
9 properties
Transcription
object
Represents a transcribed region on a DNA sequence that produces an RNA product. Transcriptions link a region of a DnaSequence to the corresponding RnaSequence…
5 properties
DocumentPart
object
Represents an ordered piece of content within an entry, template, subtemplate, or document. Each document part wraps one content block and records its containe…
7 properties
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
CreateResultTableInput
object
2 properties 2 required
ProteinFormatRef
object
2 properties
DocumentEmbeddable
object
ProjectRef
object
2 properties
ReviewRef
object
2 properties
Primer
object
Represents a primer binding site on a nucleotide sequence, indicating where an oligonucleotide primer anneals for PCR amplification or sequencing. The Primer l…
7 properties
WebhookApp
object
The Benchling App the webhook was delivered to.
1 property 1 required
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
InsertDocumentPartsInput
object
4 properties 4 required
EntrySchemaRef
object
2 properties
RunSchemaRef
object
2 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
SectionContentInput
object
3 properties 1 required
UnstructuredTableContentInput
object
4 properties 4 required
DnaSequence
UnstructuredTableRowInput
object
1 property 1 required
LinkSpan
object
LinkSpan is used when we want to apply a URL to a particular span of the text.
4 properties
TextContentInput
object
6 properties 2 required
AaSequenceRef
object
2 properties
OligoConjugate
DateTimeValue
object
A type that represents datetime values.
2 properties
InsertCoordinates
object
1 property
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
Translation
object
Represents a protein-coding region (CDS) on a nucleotide sequence, showing the translated amino acid sequence. Translations can span a single contiguous region…
12 properties
FolderRef
object
2 properties
EntryCreatedWebhookEnvelopeV3
Request body Benchling sends for a v3.entry.created event.
ReviewProcess
object
Defines a review process configuration that specifies how entries and other reviewable items should be reviewed. A ReviewProcess belongs to an Organization and…
8 properties
FloatAppConfigSpec
object
Specifies that an app configuration field should accept a floating-point number.
3 properties
OrganizationRef
object
2 properties
ListItemContentInput
object
7 properties 3 required
OligoRef
object
2 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
MentionInput
object
2 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
CustomEntity
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
Mention
object
Represents an inline mention of another Benchling item within text content. Mentions allow users to reference entities (sequences, samples, entries, etc.) dire…
3 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
WebhookEnvelopeBaseV0
object
Fields common to every webhook request body. The event itself is carried in the message property of the event-specific payload.
5 properties 5 required
RegionsListItem
object
Represents a contiguous position range within a Translation or other multi-region feature. For spliced genes or complex reading frames, a Translation may span…
3 properties
SelectorInput
object
4 properties
ChemSimplePolymer
object
Represents a small molecule within a complex polymer structure. Contains SMILES and molfile representations of the chemical structure, along with connections t…
7 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
ComplexPolymerStructure
object
Contains the complete structural definition of a complex polymer, including all component polymers and their interconnections. This is the core data structure…
4 properties
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
ListItemDocumentContent
object
Represents a single list item within notebook or document content. List items store their marker style, rich text, and indentation for ordered, unordered, and…
7 properties
CreateEntryInput
object
6 properties 2 required
CodeBlockDocumentContent
object
Represents a block of code or preformatted text within notebook or document content. Code blocks preserve the text content for display as a standalone code blo…
2 properties
AaSequence
ObjectLinkValue
object
A type that represents links to other objects.
2 properties
DocumentContentInput
object
UnstructuredTableCellFormatInput
object
5 properties
DocumentLikeVersionMetadata
object
Version metadata for a DocumentLike-style entry. Captures the API identifier of a particular version snapshot together with the time that version was produced.…
3 properties
ComplexPolymerResolvedAttachment
object
Detailed information about a group of contiguous connections in a complex polymer. The entire chemical structure of the connection group, and any components in…
3 properties
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
UpdateDocumentPartsInput
object
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
ComplexPolymerConnection
object
Represents a chemical bond between two polymers within a complex polymer structure. Connections can be covalent bonds (including disulfide bonds) or hydrogen b…
6 properties
TextFormatInput
object
5 properties
IEntry
object
18 properties
RegistryRef
object
2 properties
IOligoConjugate
object
An oligo conjugate is a specific type of complex polymer that consists of a single short DNA/RNA strand with multiple attached molecules (aka conjugates).
23 properties
RangeCoordinates
object
2 properties 2 required
TableCellSelector
object
A predefined dropdown selector that can be assigned to table cells.
4 properties
SchemaFieldDefinitionRef
object
2 properties
ObjectLinkListValue
object
A type that represents a list of links to other objects.
2 properties
CreateRegistrationTableInput
object
2 properties 2 required
HeaderDocumentContent
object
Represents a heading block within notebook or document content. Headers store the heading level, rich text, and indentation used to organize document sections.
7 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
UnstructuredTableDocumentContentSummary
object
An unstructured (plain) table embedded within a notebook entry. Unlike structured tables, unstructured tables have freeform cells without typed columns. Cells…
6 properties
NucleotideSequenceRef
object
2 properties
CreateEntryContentInput
object
EntityAssociation
object
Every entity association maps a Benchling entity to one or more HELM references in the complex polymer. These HELM polymers each have the same chemical structu…
3 properties
UnresolvableEmbeddedItem
object
An embedded Benchling item that exists in the system but cannot be fetched via the V3 REST API (currently Protocols, Equipment, and Trial Subjects). It has no…
2 properties
AttachmentDocumentContent
object
Represents an external file attachment embedded in notebook or document content. Attachments expose file metadata, a temporary download URL, and indentation wi…
8 properties
RunRef
object
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
LinkSpanInput
object
3 properties
DateAppConfigSpec
object
Specifies that an app configuration field should accept a date value.
2 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
ReviewProcessStageRef
object
2 properties
PeptideSimplePolymer
object
Represents a peptide or protein chain within a complex polymer structure. Contains the amino acid residue sequence and connections to other polymers. The entit…
6 properties
PrincipalUnpaginatedList
object
1 property
CreateFileAttachmentInput
object
2 properties 2 required
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
CodeBlockContentInput
object
2 properties 2 required
ICustomEntity
object
15 properties
MoveDocumentPartsInput
object
4 properties 4 required
UnstructuredTableCellInputValue
object
2 properties 2 required
BulkImport
object
1 property 1 required
DocumentLikeRef
object
2 properties
DeleteDocumentPartsInput
object
3 properties 3 required
NucleotideMonomerRef
object
2 properties
SectionDocumentContent
object
Represents a section divider within notebook or document content. Sections can include a title, date, and color to group related document parts.
4 properties
ReviewProcessVersion
object
A specific version of a ReviewProcess configuration. Review processes are versioned to allow changes to review requirements while preserving the rules that app…
4 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
Entry
NucleotideAnnotation
object
Represents a biological feature annotation on a nucleotide sequence (DNA or RNA). Annotations mark regions of interest such as genes, promoters, terminators, r…
8 properties
TableColumnDefinition
object
A column definition within a table, specifying the label and optional width.
4 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
AttachmentContentInput
object
4 properties 2 required
IntegerValue
object
A type that represents integer values.
2 properties
GeneralError
object
5 properties 5 required
EntryPaginatedList
object
2 properties
DocumentPartPaginatedList
object
2 properties
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
UnstructuredTableCellInput
object
5 properties 1 required
UpdateEntryInput
object
9 properties
OligoDuplex
Protein
CreateTextInput
object
2 properties 2 required
UnstructuredTableMergeRangeInput
object
2 properties 2 required
ReviewProcessUnpaginatedList
object
1 property
RnaSequenceRef
object
2 properties
IDnaSequence
object
23 properties
IProtein
object
22 properties
EntryContent
object
Represents a single content item within an EntrySection. The type field indicates what kind of content this is (see ContentType). This provides a simplified vi…
2 properties
IAaSequence
object
17 properties
NucleotideSimplePolymer
object
Represents a nucleic acid strand (DNA or RNA) within a complex polymer structure. Contains the sequence residues, any chemical modifications (see ModifiedNucle…
8 properties
BenchlingItemDocumentContent
object
Represents a Benchling item embedded in notebook or document content, identifying the referenced Benchling object.
3 properties
ArrayValue
object
A type that represents a list of BenchlingValues, used for multi-value cells (e.g. alias columns).
2 properties
TextDocumentContent
object
Represents a paragraph of formatted text content within a notebook entry or document. TextDocumentContent is the primary way to store narrative text in the ele…
6 properties
WebhookAppDefinition
object
The app definition the receiving app was installed from.
2 properties 2 required
AsyncTaskLink
object
2 properties
IntegerAppConfigSpec
object
Specifies that an app configuration field should accept an integer value.
3 properties
MoleculeRef
object
2 properties
TextBoxDocumentContent
object
Represents a fill-in text box within a notebook entry. Text boxes are labeled input fields that can be added to entry templates to capture specific pieces of i…
9 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
ConnectionSide
object
Represents one endpoint of a connection between polymers in a complex polymer structure. Identifies the specific attachment point including the polymer referen…
5 properties
BenchlingItemContentInput
object
3 properties 2 required
TextFormat
object
A TextFormat applies a set of TextFormatProperties to some range within a text. Examples here would include font properties like bold, italic or underline as w…
6 properties
ModifiedNucleotide
object
Represents a chemically modified nucleotide at a specific position in an oligonucleotide sequence. Each modification specifies the sugar, base, and phosphate m…
8 properties
EntrySection
object
Represents a logical section within an Entry used to organize content into collapsible groups. While sections include a date field and were historically known…
5 properties
AppConfigDropdownOption
object
Defines an option within a dropdown-type app configuration field.
4 properties
ObjectRef
object
2 properties
RunDocumentContent
object
Represents a run embedded in notebook or document content. Run content connects a document part to its run schema and, when available, the specific run.
4 properties
TextValue
object
A type that represents text (string) values.
2 properties
IOligoDuplex
object
An oligo duplex is a specific type of complex polymer that consists of two complementary DNA/RNA strands, with multiple attached molecules on either strand (ak…
25 properties
V3EventBase
object
Fields common to every v3 event message.
6 properties 6 required
DateTimeAppConfigSpec
object
Specifies that an app configuration field should accept a datetime value.
2 properties
UnstructuredTableColumnInput
object
3 properties 1 required
HeaderContentInput
object
7 properties 3 required
SecureTextAppConfigSpec
object
Specifies that an app configuration field should accept secure (encrypted) text. Used for sensitive data like API keys or credentials.
2 properties
UpdateEntryInputWithPathParams
object
10 properties 1 required
UnstructuredTableMergeRangeParentInput
object
2 properties 2 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

benchling-entry-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 Entry 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.