# Benchling Integration

Benchling Python SDK and REST API integration for registry entities, inventory, ELN...

- Repository: https://github.com/K-Dense-AI/scientific-agent-skills (55651 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-10-26
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add K-Dense-AI/scientific-agent-skills --skill benchling-integration -g -a claude-code -y`
Codex: `npx skills add K-Dense-AI/scientific-agent-skills --skill benchling-integration -g -a codex -y`
Cursor: `npx skills add K-Dense-AI/scientific-agent-skills --skill benchling-integration -g -a cursor -y`
Gemini CLI: `npx skills add K-Dense-AI/scientific-agent-skills --skill benchling-integration -g -a gemini-cli -y`

## Description

Benchling Python SDK and REST API integration for registry entities, inventory, ELN entries, workflows, Benchling Apps, and Data Warehouse queries. Use when automating lab data with benchling-sdk or the v2 API.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Benchling Integration

## When to use

Use this skill for Benchling registry entities, sequence imports, inventory, ELN entries,
workflow tasks, apps, event-driven integrations, and warehouse analytics.

**Reviewed 2026-09-30:** examples target the released **benchling-sdk 1.25.0** and its
stable **v2** API models. The [current authentication guide](https://docs.benchling.com/docs/authentication)
recommends V3 for new development, while the [V3 guide](https://docs.benchling.com/docs/v3-api-overview)
still describes endpoint-specific early access. Confirm your tenant's V3 availability and
stability before migrating; these v2 SDK examples must not be mechanically rewritten to V3.

SDK imports, model serialization, and request construction were checked locally against
1.25.0. Tenant-dependent examples are **illustrative**: no authenticated requests,
mutations, AWS deployment, or warehouse connection were run.

## Workflow

1. Identify the tenant, API version, identity, and permissions. Use OAuth app credentials
   for background integrations; use delegated authorization when acting as an individual
   user. See [authentication](references/authentication.md).
2. Read the relevant schema and resolve actual folder, registry, status, and dropdown IDs.
   Preserve sequence alphabet/topology and sample units. A valid Python model does not
   establish biological correctness or satisfaction of a tenant's required fields.
3. Read a small filtered page before writing. Use typed SDK methods and check their
   actual parameter names; not all services share the same CRUD naming convention.
4. Construct and serialize a representative payload. For imports, retain external IDs
   and returned Benchling IDs so a retry can reconcile a partial run without duplicates.
5. Perform the requested operation and read back the result. Check terminal async status;
   completed polling can still mean `FAILED`.

## Setup and a read-only query

```bash
uv pip install "benchling-sdk==1.25.0"
```

The rest: https://github.com/K-Dense-AI/scientific-agent-skills/blob/HEAD/skills/benchling-integration/SKILL.md
