Benchling · Schema
EntryTemplate
Entry templates are templates that users can base new notebook entries off of.
Life SciencesBiotechnologyR&DMolecular BiologyLaboratory Information ManagementElectronic Lab NotebookAssay ManagementInventorySequence ManagementExperiment WorkflowsRESTWebhook
Properties
| Name | Type | Description |
|---|---|---|
| apiURL | string | The canonical url of the Entry Template in the API. |
| createdAt | string | DateTime the template was created at |
| creator | object | UserSummary Resource of the user who created the template |
| customFields | object | |
| days | array | Array of day objects. Each day object has a day index (integer) and notes field (array of notes, expand further for details on note types). |
| fields | object | |
| id | string | ID of the entry template |
| modifiedAt | string | DateTime the template was last modified |
| name | string | Title of the template |
| schema | objectnull | Entry schema if set |
| templateCollectionId | string | ID of the collection that contains the template |
| webURL | string | URL of the template |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/benchling/main/json-schema/benchling-entry-template-schema.json",
"title": "EntryTemplate",
"description": "Entry templates are templates that users can base new notebook entries off of.\n",
"x-generated": "2026-10-12",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/benchling-entries-api-openapi.yml#/components/schemas/EntryTemplate",
"additionalProperties": false,
"properties": {
"apiURL": {
"description": "The canonical url of the Entry Template in the API.",
"format": "uri",
"readOnly": true,
"type": "string"
},
"createdAt": {
"description": "DateTime the template was created at",
"format": "date-time",
"readOnly": true,
"type": "string"
},
"creator": {
"allOf": [
{
"$ref": "#/$defs/UserSummary"
}
],
"description": "UserSummary Resource of the user who created the template",
"readOnly": true
},
"customFields": {
"$ref": "#/$defs/CustomFields"
},
"days": {
"description": "Array of day objects. Each day object has a day index (integer) and notes field (array of notes, expand further for details on note types).\n",
"items": {
"$ref": "#/$defs/EntryTemplateDay"
},
"type": "array"
},
"fields": {
"$ref": "#/$defs/Fields"
},
"id": {
"description": "ID of the entry template",
"type": "string"
},
"modifiedAt": {
"description": "DateTime the template was last modified",
"type": "string"
},
"name": {
"description": "Title of the template",
"type": "string"
},
"schema": {
"allOf": [
{
"$ref": "#/$defs/EntrySchema"
}
],
"description": "Entry schema if set",
"title": "SchemaProperty",
"type": [
"object",
"null"
]
},
"templateCollectionId": {
"description": "ID of the collection that contains the template",
"type": "string"
},
"webURL": {
"description": "URL of the template",
"type": "string"
}
},
"type": "object",
"$defs": {
"AppCanvasNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"properties": {
"appId": {
"description": "The API identifier for the Benchling App.",
"type": "string"
},
"canvasId": {
"description": "The API identifier for this Analysis Chart.",
"type": "string"
},
"featureId": {
"description": "The developer ID assigned to the feature of this App Canvas.",
"type": "string"
},
"type": {
"enum": [
"app_canvas"
],
"type": "string"
}
}
}
]
},
"AssayRunNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"properties": {
"assayRunId": {
"type": [
"string",
"null"
]
},
"assayRunSchemaId": {
"type": "string"
},
"type": {
"enum": [
"assay_run"
],
"type": "string"
}
},
"type": "object"
}
]
},
"BaseNotePart": {
"properties": {
"indentation": {
"default": 0,
"description": "All notes have an indentation level - the default is 0 for no indent. For lists, indentation gives notes hierarchy - a bulleted list with children is modeled as one note part with indentation 1 followed by note parts with indentation 2, for example.",
"minimum": 0,
"type": "integer"
},
"type": {
"description": "The type of the note. Type determines what other fields are present.",
"type": "string"
}
},
"type": "object"
},
"BoxCreationTableNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"$ref": "#/$defs/StructuredTableApiIdentifiers"
},
{
"properties": {
"boxSchemaId": {
"type": "string"
},
"type": {
"enum": [
"box_creation_table"
],
"type": "string"
}
},
"type": "object"
}
]
},
"ChartNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"properties": {
"chart": {
"description": "The full configuration for the chart to be displayed in-line in this note part.",
"properties": {
"id": {
"description": "The API identifier for this Analysis Chart.",
"type": "string"
}
},
"type": "object"
},
"type": {
"enum": [
"note_linked_chart"
],
"type": "string"
}
},
"type": "object"
}
]
},
"CheckboxNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"properties": {
"checked": {
"description": "Indicates whether the checkbox is checked or not.\n",
"type": "boolean"
},
"links": {
"description": "Array of links referenced in text via an @-mention, hyperlink, or the drag-n-dropped preview attached to the note.\n",
"items": {
"$ref": "#/$defs/EntryLink"
},
"type": "array"
},
"text": {
"description": "The textual contents of the note.",
"type": "string"
},
"type": {
"enum": [
"list_checkbox"
],
"type": "string"
}
},
"type": "object"
}
],
"description": "One \"line\" of a checklist"
},
"CustomField": {
"properties": {
"value": {
"type": "string"
}
},
"type": "object"
},
"CustomFields": {
"additionalProperties": {
"$ref": "#/$defs/CustomField"
},
"type": "object"
},
"EntryLink": {
"description": "Links are contained within notes to reference resources that live outside of the entry. A link can target an external resource via an http(s):// hyperlink or a Benchling resource via @-mentions and drag-n-drop.\n",
"properties": {
"id": {
"description": "For linked Benchling resources, this will be the ID of that resource (e.g., 'seq_RhYGVnHF'). Omitted for \"link\" types.\n",
"type": "string"
},
"type": {
"description": "The type of resource being linked. For hyperlinks: 'link'. For linked Benchling resources, one of: 'user', 'request', 'entry', 'stage_entry', 'protocol', 'workflow', 'custom_entity', 'aa_sequence', 'dna_sequence', 'batch', 'box', 'container', 'location', 'plate', 'sql_dashboard'; and (for legacy support) 'insights_dashboard', 'folder'.\n",
"enum": [
"link",
"user",
"request",
"entry",
"stage_entry",
"protocol",
"workflow",
"custom_entity",
"aa_sequence",
"dna_sequence",
"batch",
"box",
"container",
"location",
"plate",
"insights_dashboard",
"folder",
"sql_dashboard"
],
"type": "string"
},
"webURL": {
"description": "Canonical URL of the linked Benchling resource (if you have at least READ authorization for that resource), or the explicit URL provided as hyperlink for \"link\" types. Note: locations do not currently have a URL.\n",
"type": [
"string",
"null"
]
}
},
"type": "object"
},
"EntryNotePart": {
"description": "Notes are the main building blocks of entries. Each note corresponds roughly to a paragraph.\n",
"oneOf": [
{
"$ref": "#/$defs/SimpleNotePart"
},
{
"$ref": "#/$defs/TableNotePart"
},
{
"$ref": "#/$defs/TextBoxNotePart"
},
{
"$ref": "#/$defs/CheckboxNotePart"
},
{
"$ref": "#/$defs/ExternalFileNotePart"
},
{
"$ref": "#/$defs/AssayRunNotePart"
},
{
"$ref": "#/$defs/LookupTableNotePart"
},
{
"$ref": "#/$defs/ResultsTableNotePart"
},
{
"$ref": "#/$defs/RegistrationTableNotePart"
},
{
"$ref": "#/$defs/PlateCreationTableNotePart"
},
{
"$ref": "#/$defs/BoxCreationTableNotePart"
},
{
"$ref": "#/$defs/MixturePrepTableNotePart"
},
{
"$ref": "#/$defs/InventoryContainerTableNotePart"
},
{
"$ref": "#/$defs/InventoryPlateTableNotePart"
},
{
"$ref": "#/$defs/ChartNotePart"
},
{
"$ref": "#/$defs/AppCanvasNotePart"
}
],
"type": "object"
},
"EntrySchema": {
"description": "Entry schema",
"properties": {
"id": {
"description": "ID of the entry schema",
"type": "string"
},
"modifiedAt": {
"description": "DateTime the Entry Schema was last modified",
"format": "date-time",
"type": "string"
},
"name": {
"description": "Name of the entry schema",
"type": "string"
}
},
"type": "object"
},
"EntryTable": {
"description": "Actual tabular data with rows and columns of text on the note.\n",
"properties": {
"columnLabels": {
"description": "Array of strings, with one item per column. Defaults to null, if the user is using the default, but is set if the user has given a custom name to the column.\n",
"items": {
"type": [
"string",
"null"
]
},
"type": "array"
},
"name": {
"description": "Name of the table - defaults to e.g. Table1 but can be renamed.\n",
"type": "string"
},
"rows": {
"description": "Array of row objects.",
"items": {
"$ref": "#/$defs/EntryTableRow"
},
"type": "array"
}
},
"type": "object"
},
"EntryTableCell": {
"properties": {
"link": {
"allOf": [
{
"$ref": "#/$defs/EntryLink"
}
],
"description": "A Link Resource if this cell contained a hyperlink. Otherwise, link will be omitted from the cell object. (Note: inventory and user types are not yet supported.)\n"
},
"text": {
"description": "The textual content of the cell. If the cell was originally a formula, this will be the evaluated version of the formula.\n",
"type": "string"
}
},
"type": "object"
},
"EntryTableRow": {
"description": "Each has property 'cells' that is an array of cell objects",
"properties": {
"cells": {
"items": {
"$ref": "#/$defs/EntryTableCell"
},
"type": "array"
}
},
"type": "object"
},
"EntryTemplateDay": {
"properties": {
"day": {
"description": "1 indexed day signifier. If 0 is returned, that means the EntryTemplateDay is a section with a title but no specified Day.",
"minimum": 0,
"type": "integer"
},
"notes": {
"items": {
"$ref": "#/$defs/EntryNotePart"
},
"type": "array"
},
"title": {
"description": "Optional title of a section if sections are enabled.",
"type": [
"string",
"null"
]
}
},
"type": "object"
},
"ExternalFileNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"properties": {
"externalFileId": {
"description": "The ID of the external file. Use the 'Get an external file' endpoint to retrieve metadata about it.\n",
"type": "string"
},
"links": {
"description": "Array of links referenced in the caption via an @-mention, hyperlink, or the drag-n-dropped preview attached to the note.\n",
"items": {
"$ref": "#/$defs/EntryLink"
},
"type": "array"
},
"text": {
"description": "The caption of the file attachment.",
"type": "string"
},
"type": {
"enum": [
"external_file"
],
"type": "string"
}
},
"type": "object"
}
],
"description": "An attached user-uploaded file"
},
"Field": {
"properties": {
"displayValue": {
"readOnly": true,
"type": [
"string",
"null"
]
},
"isMulti": {
"readOnly": true,
"type": "boolean"
},
"textValue": {
"readOnly": true,
"type": [
"string",
"null"
]
},
"type": {
"allOf": [
{
"$ref": "#/$defs/FieldType"
}
],
"readOnly": true
},
"value": {
"description": "For single link fields, use the id of the item you want to link (eg. \"seq_jdf8BV24\").\nFor multi-link fields, use an array of ids of the items you want to link (eg. [\"seq_jdf8BV24\"])\n",
"oneOf": [
{
"type": "string"
},
{
"type": "boolean"
},
{
"type": "number"
},
{
"type": "object"
},
{
"items": {
"type": "string"
},
"type": "array"
}
]
}
},
"required": [
"value"
],
"type": "object"
},
"FieldType": {
"enum": [
"dna_sequence_link",
"aa_sequence_link",
"custom_entity_link",
"entity_link",
"mixture_link",
"molecule_link",
"dropdown",
"part_link",
"translation_link",
"aa_part_link",
"base_molecule_link",
"blob_link",
"text",
"long_text",
"batch_link",
"storage_link",
"entry_link",
"assay_request_link",
"assay_result_link",
"assay_run_link",
"boolean",
"float",
"integer",
"datetime",
"date",
"json"
],
"type": "string"
},
"Fields": {
"additionalProperties": {
"$ref": "#/$defs/Field"
},
"type": "object"
},
"InventoryContainerTableNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"$ref": "#/$defs/StructuredTableApiIdentifiers"
},
{
"properties": {
"destinationContainerSchemaId": {
"type": "string"
},
"mode": {
"enum": [
"create_and_fill",
"fill",
"update"
],
"type": "string"
},
"type": {
"enum": [
"inventory_container_table"
],
"type": "string"
}
},
"type": "object"
}
]
},
"InventoryPlateTableNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"$ref": "#/$defs/StructuredTableApiIdentifiers"
},
{
"properties": {
"destinationPlateSchemaId": {
"type": [
"string",
"null"
]
},
"destinationWellSchemaId": {
"type": "string"
},
"mode": {
"enum": [
"create_and_fill",
"fill",
"update"
],
"type": "string"
},
"type": {
"enum": [
"inventory_plate_table"
],
"type": "string"
}
},
"type": "object"
}
]
},
"LookupTableNotePart": {
"allOf": [
{
"$ref": "#/$defs/StructuredTableApiIdentifiers"
},
{
"properties": {
"type": {
"enum": [
"lookup_table"
],
"type": "string"
}
},
"type": "object"
}
]
},
"MixturePrepTableNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"$ref": "#/$defs/StructuredTableApiIdentifiers"
},
{
"properties": {
"mixtureSchemaId": {
"type": "string"
},
"type": {
"enum": [
"mixture_prep_table"
],
"type": "string"
}
},
"type": "object"
}
]
},
"PartySummary": {
"properties": {
"handle": {
"type": "string"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"type": "object"
},
"PlateCreationTableNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"$ref": "#/$defs/StructuredTableApiIdentifiers"
},
{
"properties": {
"plateSchemaId": {
"type": "string"
},
"type": {
"enum": [
"plate_creation_table"
],
"type": "string"
}
},
"type": "object"
}
]
},
"RegistrationTableNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"$ref": "#/$defs/StructuredTableApiIdentifiers"
},
{
"properties": {
"entitySchemaId": {
"type": "string"
},
"type": {
"enum": [
"registration_table"
],
"type": "string"
}
},
"type": "object"
}
]
},
"ResultsTableNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"$ref": "#/$defs/StructuredTableApiIdentifiers"
},
{
"properties": {
"assayResultSchemaId": {
"type": "string"
},
"type": {
"enum": [
"results_table"
],
"type": "string"
}
},
"type": "object"
}
]
},
"SimpleNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"properties": {
"links": {
"description": "Array of links referenced in text via an @-mention, hyperlink, or the drag-n-dropped preview attached to the note.\n",
"items": {
"$ref": "#/$defs/EntryLink"
},
"type": "array"
},
"text": {
"description": "The textual contents of the note.",
"type": "string"
},
"type": {
"enum": [
"text",
"code",
"list_bullet",
"list_number"
],
"type": "string"
}
},
"type": "object"
}
],
"description": "Simple note parts include the following types: - 'text': plain text - 'code': preformatted code block - 'list_bullet': one \"line\" of a bulleted list - 'list_number': one \"line\" of a numbered list\n"
},
"StructuredTableApiIdentifiers": {
"properties": {
"apiId": {
"type": "string"
},
"columns": {
"items": {
"$ref": "#/$defs/StructuredTableColumnInfo"
},
"type": "array"
},
"name": {
"type": "string"
}
},
"type": "object"
},
"StructuredTableColumnInfo": {
"properties": {
"columnId": {
"type": "string"
},
"isReadOnly": {
"type": "boolean"
},
"name": {
"type": "string"
}
},
"type": "object"
},
"TableNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"properties": {
"links": {
"description": "Array of links referenced in the caption via an @-mention, hyperlink, or the drag-n-dropped preview attached to the note.\n",
"items": {
"$ref": "#/$defs/EntryLink"
},
"type": "array"
},
"table": {
"allOf": [
{
"$ref": "#/$defs/EntryTable"
}
],
"type": "object"
},
"text": {
"description": "The caption of the table.",
"type": "string"
},
"type": {
"enum": [
"table"
],
"type": "string"
}
},
"type": "object"
}
],
"description": "A table with rows and columns of text"
},
"TextBoxNotePart": {
"allOf": [
{
"$ref": "#/$defs/BaseNotePart"
},
{
"properties": {
"links": {
"description": "Array of links referenced via an @-mention, hyperlink, or the drag-n-dropped preview attached to the note.\n",
"items": {
"$ref": "#/$defs/EntryLink"
},
"type": "array"
},
"name": {
"type": "string"
},
"text": {
"type": "string"
},
"type": {
"enum": [
"text_box"
],
"type": "string"
}
},
"type": "object"
}
]
},
"UserSummary": {
"allOf": [
{
"$ref": "#/$defs/PartySummary"
},
{}
]
}
}
}
Work with this as data
Every JSON Schema 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 schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.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.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/benchling-entry-template"
All schemas
curl "https://apis.io/api/v1/json-schemas?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.