> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.benchling.com/docs/recipes/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.benchling.com/_mcp/server. # Recipes ## Docs - [Uploading Results to Benchling through the API](https://docs.benchling.com/docs/example-creating-results.md): Create assay results directly, transactionally, or in bulk into a Notebook results table. - [Registering Entities](https://docs.benchling.com/docs/registering-entities.md): Move entities into your Registry with create, update, or bulk registration endpoints. - [Uploading an Attachment to Benchling](https://docs.benchling.com/docs/uploading-an-attachment-to-benchling.md): Upload files to Benchling as attachments, then link them to schema fields or add them to notebook entries. - [Creating a new Notebook Entry containing Results](https://docs.benchling.com/docs/creating-a-new-notebook-entry-containing-results.md): Create a notebook entry, add a results table to it, and fill the table with assay results, using the V3 SDK. - [Getting Information on Project Collaborators](https://docs.benchling.com/docs/getting-information-on-project-collaborators.md): Work out who can access what by combining the V3 collaboration, group membership, and policy endpoints. Two listing endpoints answer these questions in either direction. - [User Management via the API](https://docs.benchling.com/docs/user-management-via-the-api.md): Read, create, update, and suspend Benchling users programmatically from an Enterprise tenant. - [Push Benchling Request Notification to Slack](https://docs.benchling.com/docs/example-push-benchling-request-notification-to-slack.md): A serverless event-driven integration that posts new Benchling Requests to a Slack channel. - [Introduction to Transfers](https://docs.benchling.com/docs/introduction-to-transfers.md): An overview of how to perform transfers using the Benchling Containers API. - [Use APIs to process files with Benchling Connect](https://docs.benchling.com/docs/use-apis-to-process-outputfile-with-lab-automation.md): Generate input files, upload output files, and process Benchling Connect runs inside Notebook entries. - [Custom Transforms in Benchling Connect](https://docs.benchling.com/docs/custom-transforms-in-lab-automation.md): Inject your own logic into the Benchling Connect processing pipeline with a Benchling App. - [Interacting with the API using R](https://docs.benchling.com/docs/interacting-with-the-api-using-r.md): Retrieve, create, update, and archive custom entities from R using httr and jsonlite. - [Working with Datasets using R](https://docs.benchling.com/docs/working-with-datasets-using-r.md): Export a Benchling dataset into R, run an IC50 analysis, and upload the results back as analysis outputs. - [Image File Upload](https://docs.benchling.com/docs/image-file-upload.md): Read an image out of a spreadsheet cell and upload it to Benchling as an attachment with an image preview. - [Large Attachment Upload](https://docs.benchling.com/docs/large-attachment-upload.md): Stream a large file from disk to Benchling in one upload with the V3 API, or split it into parts with V2. - [Single Transfer: Source Container](https://docs.benchling.com/docs/single-transfer-source-container.md): Transfer the entire contents of one container into an empty destination container. - [Single Transfer: Unlimited Source](https://docs.benchling.com/docs/single-transfer-unlimited-source.md): Transfer an entity into a container without drawing from a source container, using the entity itself as the source. - [Single Transfer: Transfer Into Non-Empty Container](https://docs.benchling.com/docs/single-transfer-transfer-into-non-empty-container.md): Transfer a fixed volume into a container that already has contents, then read back the combined contents. - [Bulk Transfer: Create and Fill (JavaScript)](https://docs.benchling.com/docs/bulk-transfer-create-and-fill-javascript.md): Create a plate, transfer an entity into every well with one bulk call, and poll the resulting async task to completion. - [Find Users Using the V3 SDK](https://docs.benchling.com/docs/find-users-using-the-benchling-sdk.md): Resolve a Benchling user from a username, a display name, or an API ID. - [Create a Dropdown Field Using the V3 SDK](https://docs.benchling.com/docs/create-a-dropdown-field-using-the-sdk.md): Build a list of dropdown options and create the dropdown in your tenant's registry. - [Move a Box to a New Location Using the V3 SDK](https://docs.benchling.com/docs/move-a-box-to-a-new-location-using-the-sdk.md): Find a box by name, then update its parent storage to move it. - [Convert SDK Objects to JSON](https://docs.benchling.com/docs/convert-sdk-objects-to-json.md): Page through every plate in a tenant and serialize the returned SDK models to a JSON file. - [Get a Large Number of Entities by Name](https://docs.benchling.com/docs/get-a-large-number-of-entities-by-name.md): Look up thousands of custom entities by name, staying within the per-request name filter limit by chunking the name list. > **Note:** This page contains both a page directory (above) and the landing page content (below). The page directory is generated for agent use and does not appear on the landing page. > For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.benchling.com/docs/recipes/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.benchling.com/_mcp/server. # Recipes These recipes collect task-oriented examples for common Benchling developer workflows across the API, apps, webhooks, Benchling Connect, and R-based analysis. Python examples use the [V3 Python SDK](/docs/getting-started-with-the-v3-sdk) against the [V3 API](/docs/v3-api-overview), including beta endpoints, so set `early_access="true"` on the client as each recipe shows. A few recipes still call V2 for steps that V3 doesn't cover yet, and say so where they do. #### [Upload results with the API](/docs/example-creating-results) Create results one at a time, in an all-or-nothing batch, or in bulk. #### [Register entities](/docs/registering-entities) Move entities into the Registry with create, update, or bulk registration flows. #### [Upload an attachment](/docs/uploading-an-attachment-to-benchling) Upload a file as an attachment, then link it to a field or a notebook entry. #### [Create notebook entries with results](/docs/creating-a-new-notebook-entry-containing-results) Build notebook entries that capture and organize uploaded results. #### [Get project collaborators](/docs/getting-information-on-project-collaborators) Read project membership and the permissions behind it. #### [Manage users via the API](/docs/user-management-via-the-api) Create, update, and suspend Benchling users programmatically. #### [Push request notifications to Slack](/docs/example-push-benchling-request-notification-to-slack) Outdated: a V2 EventBridge integration that notifies Slack from Benchling requests. #### [Introduction to transfers](/docs/introduction-to-transfers) Move volume and mass between containers in Benchling Inventory. #### [Process output files with Benchling Connect](/docs/use-apis-to-process-outputfile-with-lab-automation) Send instrument output through Benchling Connect and process it programmatically. #### [Custom transforms in Benchling Connect](/docs/custom-transforms-in-lab-automation) Reshape instrument output before it is processed into results. #### [Work with the API using R](/docs/interacting-with-the-api-using-r) Retrieve, create, update, and archive Benchling data from R. #### [Work with datasets using R](/docs/working-with-datasets-using-r) Pull an analysis data frame into R, fit IC50 curves, and upload the plots back to Benchling. ## Step-by-step walkthroughs These recipes pair a code panel with prose steps that highlight the lines each step is about. #### [Image file upload](/docs/image-file-upload) Read an image out of a spreadsheet cell and upload it as an attachment. #### [Large attachment upload](/docs/large-attachment-upload) Stream a large file to Benchling in one request, with the V2 multipart flow as a fallback. #### [Single transfer: source container](/docs/single-transfer-source-container) Move a container's entire contents into an empty destination. #### [Single transfer: unlimited source](/docs/single-transfer-unlimited-source) Transfer an entity into a container without drawing down a source container. #### [Single transfer: non-empty container](/docs/single-transfer-transfer-into-non-empty-container) Transfer into a container that already has contents, then read back the combined contents. #### [Bulk transfer: create and fill](/docs/bulk-transfer-create-and-fill-javascript) Create a plate and fill every well in one bulk call, then poll the async task. #### [Find users with the V3 SDK](/docs/find-users-using-the-benchling-sdk) Resolve a user from a username, a display name, or an API ID. #### [Create a dropdown field](/docs/create-a-dropdown-field-using-the-sdk) Build dropdown options and create the dropdown in your registry. #### [Move a box](/docs/move-a-box-to-a-new-location-using-the-sdk) Find a box by name and update its parent storage to move it. #### [Convert SDK objects to JSON](/docs/convert-sdk-objects-to-json) Page through results and serialize the returned SDK models to a file. #### [Get many entities by name](/docs/get-a-large-number-of-entities-by-name) Chunk a long name list so no request exceeds URL length limits.