> This page is for Developer Documentation.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.benchling.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.benchling.com/_mcp/server.

# Bulk get registered entities

GET https://{tenant_name}.benchling.com/api/v2/registries/{registry_id}/registered-entities:bulk-get

Bulk get registered entities

Reference: https://docs.benchling.com/docs/api/v2/benchling-api/registry/bulk-get-registered-entities

## Authentication

- `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer <token>`, where token is your auth token.

## Request

### Path parameters

- `registry_id` (string, required) — ID for the registry

### Query parameters

- `entityRegistryIds` (string, required) — Comma separated list of entity Registry IDs

## Response

### 200

OK

- `entities` (list of Entity, optional)

## Errors

### 400 Bad Request Error

Bad Request

- `error` (BadRequestErrorError, optional)

### 404 Not Found Error

Not Found

- `error` (NotFoundErrorError, optional)

## Types

### Entity

- `entityType`: `aa_sequence` (aa_sequence)
  - `aliases` (list of string, optional) — Array of aliases
  - `aminoAcids` (string, optional) — Amino acids of the AA sequence.
  - `annotations` (list of AaAnnotation, optional) — Array of annotation objects on the AA sequence.
  - `apiURL` (string, optional) — The canonical url of the AA Sequence in the API.
  - `archiveRecord` (ArchiveRecord, optional, nullable)
  - `authors` (list of UserSummary, optional)
  - `createdAt` (datetime, optional) — DateTime the AA sequence was created.
  - `creator` (UserSummary, optional)
  - `customFields` (map from string to CustomField, optional) — Custom fields set on the AA sequence.
  - `entityRegistryId` (string, optional, nullable) — Registry ID of the AA sequence if registered.
  - `fields` (map from string to Field, optional)
  - `folderId` (string, optional, nullable) — ID of the folder that contains the AA sequence.
  - `id` (string, optional) — ID of the AA sequence.
  - `length` (integer, optional) — Number of amino acids in the AA sequence.
  - `modifiedAt` (datetime, optional) — DateTime the AA sequence was last modified.
  - `name` (string, optional) — Name of the AA sequence.
  - `registrationOrigin` (RegistrationOrigin, optional, nullable)
  - `registryId` (string, optional, nullable) — Registry the AA sequence is registered in.
  - `schema` (SchemaSummary, optional, nullable)
  - `url` (string, optional) — The path of the web URL, omitting the tenant domain
  - `webURL` (string, optional) — URL of the AA sequence.
- `entityType`: `custom_entity` (custom_entity)
  - `aliases` (list of string, optional)
  - `apiURL` (string, optional) — The canonical url of the Custom Entity in the API.
  - `archiveRecord` (ArchiveRecord, optional, nullable)
  - `authors` (list of UserSummary, optional)
  - `createdAt` (datetime, optional)
  - `creator` (CustomEntityWithEntityTypeCreator, optional)
  - `customFields` (map from string to CustomField, optional)
  - `entityRegistryId` (string, optional, nullable)
  - `fields` (map from string to Field, optional)
  - `folderId` (string, optional, nullable)
  - `id` (string, optional)
  - `modifiedAt` (datetime, optional)
  - `name` (string, optional)
  - `registrationOrigin` (RegistrationOrigin, optional, nullable)
  - `registryId` (string, optional, nullable)
  - `schema` (SchemaSummary, optional, nullable)
  - `url` (string, optional) — The path of the web URL, omitting the tenant domain
  - `webURL` (string, optional)
- `entityType`: `dna_oligo` (dna_oligo)
- `entityType`: `dna_sequence` (dna_sequence)
  - `aliases` (list of string, optional)
  - `annotations` (list of DnaAnnotation, optional)
  - `apiURL` (string, optional) — The canonical url of the DNA Sequence in the API.
  - `archiveRecord` (ArchiveRecord, optional, nullable)
  - `authors` (list of UserSummary, optional)
  - `bases` (string, optional)
  - `createdAt` (datetime, optional)
  - `creator` (UserSummary, optional)
  - `customFields` (map from string to CustomField, optional)
  - `dnaAlignmentIds` (list of string, optional) — API IDs of Nucleotide Alignments involving the RNA sequence
  - `entityRegistryId` (string, optional, nullable)
  - `fields` (map from string to Field, optional)
  - `folderId` (string, optional, nullable)
  - `id` (string, optional)
  - `isCircular` (boolean, optional)
  - `length` (integer, optional)
  - `modifiedAt` (datetime, optional)
  - `name` (string, optional)
  - `parts` (list of DnaSequencePart, optional)
  - `primers` (list of Primer, optional)
  - `registrationOrigin` (RegistrationOrigin, optional, nullable)
  - `registryId` (string, optional, nullable)
  - `schema` (SchemaSummary, optional, nullable)
  - `transcriptions` (list of DnaSequenceTranscription, optional)
  - `translations` (list of Translation, optional)
  - `url` (string, optional) — The path of the web URL, omitting the tenant domain
  - `webURL` (string, optional)
- `entityType`: `mixture` (mixture)
  - `aliases` (list of string, optional)
  - `allowMeasuredIngredients` (boolean, optional) — Derived from the mixture's schema.
  - `amount` (string, optional) — The positive numerical amount value of this mixture in string format (to preserve full precision). Pair with `units`. Supports scientific notation (1.23e4).
  - `apiURL` (string, optional) — The canonical url of the Mixture in the API.
  - `archiveRecord` (ArchiveRecord, optional, nullable)
  - `authors` (list of UserSummary, optional)
  - `createdAt` (datetime, optional)
  - `creator` (MixtureWithEntityTypeCreator, optional)
  - `customFields` (map from string to CustomField, optional)
  - `entityRegistryId` (string, optional, nullable)
  - `fields` (map from string to Field, optional) — Mixtures can have up to one parent mixture field.
  - `folderId` (string, optional, nullable)
  - `id` (string, optional)
  - `ingredients` (list of Ingredient, optional) — List of ingredients on this mixture.
  - `modifiedAt` (datetime, optional)
  - `name` (string, optional)
  - `registrationOrigin` (RegistrationOrigin, optional, nullable)
  - `registryId` (string, optional, nullable)
  - `schema` (SchemaSummary, optional)
  - `units` (enum, optional)
    - Allowed values: `nL`, `uL`, `mL`, `L`, `g`, `kg`, `mg`, `ug`, `Units`
  - `webURL` (string, optional)
- `entityType`: `molecule` (molecule)
  - `aliases` (list of string, optional) — Array of aliases.
  - `apiURL` (string, optional) — The canonical url of the Molecule in the API.
  - `archiveRecord` (ArchiveRecord, optional, nullable)
  - `authors` (list of UserSummary, optional)
  - `canonicalizedSmiles` (string, optional) — The canonicalized chemical structure in SMILES format.
  - `createdAt` (datetime, optional) — DateTime the Molecule was created.
  - `creator` (UserSummary, optional)
  - `customFields` (map from string to CustomField, optional) — Custom fields set on the Molecule.
  - `entityRegistryId` (string, optional, nullable) — Registry ID of the Molecule if registered.
  - `fields` (map from string to Field, optional)
  - `folderId` (string, optional, nullable) — ID of the folder that contains the Molecule.
  - `id` (string, optional) — ID of the Molecule.
  - `modifiedAt` (datetime, optional) — DateTime the Molecule was last modified.
  - `name` (string, optional) — Name of the Molecule.
  - `originalSmiles` (string, optional, nullable) — The original chemical structure supplied by the user in SMILES format. Null if the user did not originally supply SMILES.
  - `registrationOrigin` (RegistrationOrigin, optional, nullable)
  - `registryId` (string, optional, nullable) — Registry the Molecule is registered in.
  - `schema` (SchemaSummary, optional, nullable)
  - `webURL` (string, optional) — URL of the Molecule.
- `entityType`: `rna_oligo` (rna_oligo)
- `entityType`: `rna_sequence` (rna_sequence)
  - `aliases` (list of string, optional)
  - `alignmentIds` (list of string, optional) — API IDs of Nucleotide Alignments involving the RNA sequence
  - `annotations` (list of RnaAnnotation, optional)
  - `apiURL` (string, optional) — The canonical url of the RNA Sequence in the API.
  - `archiveRecord` (ArchiveRecord, optional, nullable)
  - `authors` (list of UserSummary, optional)
  - `bases` (string, optional)
  - `createdAt` (datetime, optional)
  - `creator` (UserSummary, optional)
  - `customFields` (map from string to CustomField, optional)
  - `customNotation` (string, optional, nullable) — Representation of the RNA Sequence in the custom notation specified in the request. Null if no notation was specified.
  - `customNotationName` (string, optional, nullable) — Name of the custom notation specified in the request. Null if no notation was specified.
  - `entityRegistryId` (string, optional, nullable)
  - `fields` (map from string to Field, optional)
  - `folderId` (string, optional, nullable)
  - `helm` (string, optional, nullable) — Representation of the RNA Sequence in HELM syntax, including any chemical modifications.
  - `id` (string, optional)
  - `isCircular` (boolean, optional)
  - `length` (integer, optional)
  - `modifiedAt` (datetime, optional)
  - `name` (string, optional)
  - `parts` (list of RnaSequencePart, optional)
  - `primers` (list of Primer, optional)
  - `registrationOrigin` (RegistrationOrigin, optional, nullable)
  - `registryId` (string, optional, nullable)
  - `schema` (SchemaSummary, optional, nullable)
  - `translations` (list of Translation, optional)
  - `url` (string, optional) — The path of the web URL, omitting the tenant domain
  - `webURL` (string, optional)

### BadRequestErrorError

- `message` (string, optional)
- `type` (enum, optional)
  - Allowed values: `invalid_request_error`
- `userMessage` (string, optional)

### NotFoundErrorError

- `message` (string, optional)
- `type` (enum, optional)
  - Allowed values: `invalid_request_error`
- `userMessage` (string, optional)
- `invalidId` (string, optional)

### AaAnnotation

- `color` (string, optional)
- `end` (integer, optional) — 0-based exclusive end index. The end of the AA sequence is always represented as 0.
- `id` (string, optional)
- `name` (string, optional)
- `notes` (string, optional)
- `start` (integer, optional) — 0-based inclusive start index.
- `type` (string, optional)

### ArchiveRecord

- `reason` (string, optional)

### UserSummary

- `handle` (string, optional)
- `id` (string, optional)
- `name` (string, optional)

### CustomField

- `value` (string, optional)

### Field

- `value` (FieldValue, required, nullable) — For single link fields, use the id of the item you want to link (eg. "seq_jdf8BV24"). For multi-link fields, use an array of ids of the items you want to link (eg. ["seq_jdf8BV24"])
- `displayValue` (string, optional, nullable)
- `isMulti` (boolean, optional)
- `textValue` (string, optional, nullable)
- `type` (enum, optional)
  - Allowed values: `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`

### RegistrationOrigin

- `originEntryId` (string, optional, nullable)
- `registeredAt` (datetime, optional)

### SchemaSummary

- `id` (string, optional)
- `name` (string, optional)

### CustomEntityWithEntityTypeCreator

- `handle` (string, optional)
- `id` (string, optional)
- `name` (string, optional)

### DnaAnnotation

- `color` (string, optional) — Hex color code used when displaying this feature in the UI.
- `customFields` (list of SequenceFeatureCustomField, optional)
- `name` (string, optional)
- `notes` (string, optional)
- `end` (integer, optional) — 0-based exclusive end index. The end of the sequence is always represented as 0.
- `start` (integer, optional) — 0-based inclusive start index.
- `strand` (integer, optional)
- `type` (string, optional)

### DnaSequencePart

- `end` (integer, optional) — 0-based exclusive end index. The end of the sequence is always represented as 0.
- `sequenceId` (string, optional)
- `start` (integer, optional) — 0-based inclusive start index.
- `strand` (integer, optional)

### Primer

- `bases` (string, optional)
- `bindPosition` (integer, optional)
- `color` (string, optional)
- `end` (integer, optional) — 0-based exclusive end index. The end of the sequence is always represented as 0.
- `name` (string, optional)
- `oligoId` (string, optional)
- `overhangLength` (integer, optional)
- `start` (integer, optional) — 0-based inclusive start index.
- `strand` (integer, optional)

### DnaSequenceTranscription

- `end` (integer, optional) — 0-based exclusive end index. The end of the sequence is always represented as 0.
- `sequenceId` (string, optional) — Linked RNA sequence ID.
- `start` (integer, optional) — 0-based inclusive start index.
- `strand` (integer, optional)

### Translation

- `color` (string, optional) — Hex color code used when displaying this feature in the UI.
- `customFields` (list of SequenceFeatureCustomField, optional)
- `name` (string, optional)
- `notes` (string, optional)
- `aminoAcids` (string, optional)
- `coerceStartCodonToMethionine` (boolean, optional, default: false) — Whether to override the translation of the start codon to Methionine. Has no effect when the start codon already translates to Methionine.
- `end` (integer, optional) — 0-based exclusive end index. The end of the sequence is always represented as 0.
- `geneticCode` (enum, optional, default: STANDARD) — The genetic code to use when translating the nucleotide sequence into amino acids.
  - Allowed values: `STANDARD`, `VERTEBRATE_MITOCHONDRIAL`, `YEAST_MITOCHONDRIAL`, `MOLD_PROTOZOAN_COELENTERATE_MITOCHONDRIAL_MYCOPLASMA_SPIROPLASMA`, `INVERTEBRATE_MITOCHONDRIAL`, `CILIATE_DASYCLADACEAN_HEXAMITA_NUCLEAR`, `ECHINODERM_FLATWORM_MITOCHONDRIAL`, `EUPLOTID_NUCLEAR`, `BACTERIAL_ARCHAEAL_PLANT_PLASTID`, `ALTERNATIVE_YEAST_NUCLEAR`, `ASCIDIAN_MITOCHONDRIAL`, `ALTERNATIVE_FLATWORM_MITOCHONDRIAL`, `CHLOROPHYCEAN_MITOCHONDRIAL`, `TREMATODE_MITOCHONDRIAL`, `SCENEDESMUS_OBLIQUUS_MITOCHONDRIAL`, `THRAUSTOCHYTRIUM_MITOCHONDRIAL`, `RHABDOPLEURIDAE_MITOCHONDRIAL`, `CANDIDATE_DIVISION_SR1_GRACILIBACTERIA`, `PACHYSOLEN_TANNOPHILUS_NUCLEAR`, `MESODINIUM_NUCLEAR`, `PERITRICH_NUCLEAR`, `CEPHALODISCIDAE_MITOCHONDRIAL_UAA_TYR`
- `regions` (list of TranslationRegionsItems, optional)
- `start` (integer, optional) — 0-based inclusive start index.
- `strand` (integer, optional)

### MixtureWithEntityTypeCreator

- `handle` (string, optional)
- `id` (string, optional)
- `name` (string, optional)

### Ingredient

- `amount` (string, optional, nullable) — The amount value of this ingredient in its mixture, in string format (to preserve full precision). Pair with `units`. Supports scientific notation (1.23e4). One ingredient on this mixture can have an amount value of `"QS"`.
- `catalogIdentifier` (string, optional, nullable)
- `componentEntity` (IngredientComponentEntity, optional) — The entity that uniquely identifies this component.
- `componentLotContainer` (ContainerLabels, optional, nullable) — The container representing the component lot for this ingredient. This is only present if the mixture schema supports component lots in "inventory" format.
- `componentLotEntity` (EntityLabels, optional, nullable) — The entity representing the component lot for this ingredient. This is only present if the mixture schema supports component lots in "inventory" format.
- `componentLotText` (string, optional, nullable) — Text representing the component lot for this ingredient. This is only present if the mixture schema supports component lots in "text" format.
- `hasParent` (boolean, optional)
- `notes` (string, optional, nullable)
- `targetAmount` (string, optional, nullable) — The target amount for this ingredient such that this ingredient's proportion in its mixture would preserve the equivalent ingredient's proportion in the parent mixture. Pair with `units`.
- `units` (enum, optional)
  - Allowed values: `nL`, `uL`, `mL`, `L`, `mg`, `g`, `kg`, `ug`, `Units`, `Cells`, `mol`, `mmol`, `umol`

### RnaAnnotation

- `color` (string, optional) — Hex color code used when displaying this feature in the UI.
- `customFields` (list of SequenceFeatureCustomField, optional)
- `name` (string, optional)
- `notes` (string, optional)
- `end` (integer, optional) — 0-based exclusive end index. The end of the sequence is always represented as 0.
- `start` (integer, optional) — 0-based inclusive start index.
- `strand` (integer, optional)
- `type` (string, optional)

### RnaSequencePart

- `end` (integer, optional) — 0-based exclusive end index. The end of the sequence is always represented as 0.
- `sequenceId` (string, optional)
- `start` (integer, optional) — 0-based inclusive start index.
- `strand` (integer, optional)

### FieldValue

For single link fields, use the id of the item you want to link (eg. "seq_jdf8BV24"). For multi-link fields, use an array of ids of the items you want to link (eg. ["seq_jdf8BV24"])

### SequenceFeatureCustomField

A name and value pair associated with a sequence feature (annotation or translation). For genbank imports, these are the qualifiers associated with each feature.

- `name` (string, optional) — Name of the custom field
- `value` (string, optional) — Value of the custom field

### TranslationRegionsItems

- `end` (integer, optional) — 0-based exclusive end index. The end of the sequence is always represented as 0.
- `start` (integer, optional) — 0-based inclusive start index.

### IngredientComponentEntity

The entity that uniquely identifies this component.

- `entityRegistryId` (string, optional, nullable)
- `id` (string, optional)
- `name` (string, optional)

### ContainerLabels

- `barcode` (string, optional)
- `id` (string, optional)
- `name` (string, optional)

### EntityLabels

- `entityRegistryId` (string, optional, nullable)
- `id` (string, optional)
- `name` (string, optional)

## Examples

**Response**

```json
{
  "entities": [
    {
      "entityType": "dna_sequence",
      "aliases": [
        "string"
      ],
      "annotations": [
        {
          "color": "#F58A5E",
          "customFields": [
            {
              "name": "string",
              "value": "string"
            }
          ],
          "name": "string",
          "notes": "Cong et al Science. 2013 Jan 3.",
          "end": 1,
          "start": 1,
          "strand": 1,
          "type": "string"
        }
      ],
      "apiURL": "https://benchling.com/api/v2/dna-sequences/seq_asQya4lk",
      "archiveRecord": {
        "reason": "Made in error"
      },
      "authors": [
        {
          "handle": "string",
          "id": "string",
          "name": "string"
        }
      ],
      "bases": "string",
      "createdAt": "2024-01-15T09:30:00Z",
      "creator": {
        "handle": "string",
        "id": "string",
        "name": "string"
      },
      "customFields": {
        "Legacy ID": {
          "value": "STR100"
        }
      },
      "dnaAlignmentIds": [
        "string"
      ],
      "entityRegistryId": "string",
      "fields": {},
      "folderId": "string",
      "id": "string",
      "isCircular": true,
      "length": 1,
      "modifiedAt": "2024-01-15T09:30:00Z",
      "name": "string",
      "parts": [
        {
          "end": 1,
          "sequenceId": "seq_VfVOART1",
          "start": 1,
          "strand": 1
        }
      ],
      "primers": [
        {
          "bases": "string",
          "bindPosition": 1,
          "color": "string",
          "end": 1,
          "name": "string",
          "oligoId": "string",
          "overhangLength": 1,
          "start": 1,
          "strand": 1
        }
      ],
      "registrationOrigin": {
        "originEntryId": "string",
        "registeredAt": "2024-01-15T09:30:00Z"
      },
      "registryId": "string",
      "schema": {
        "id": "string",
        "name": "string"
      },
      "transcriptions": [
        {
          "end": 1,
          "sequenceId": "seq_VfVOART1",
          "start": 1,
          "strand": 1
        }
      ],
      "translations": [
        {
          "color": "#F58A5E",
          "customFields": [
            {
              "name": "string",
              "value": "string"
            }
          ],
          "name": "string",
          "notes": "Cong et al Science. 2013 Jan 3.",
          "aminoAcids": "string",
          "coerceStartCodonToMethionine": false,
          "end": 1,
          "geneticCode": "STANDARD",
          "regions": [
            {
              "end": 1,
              "start": 1
            }
          ],
          "start": 1,
          "strand": 1
        }
      ],
      "url": "string",
      "webURL": "string"
    }
  ]
}
```

**SDK Code**

```python
import requests

url = "https://{tenant_name}.benchling.com/api/v2/registries/registry_id/registered-entities:bulk-get"

querystring = {"entityRegistryIds":"entityRegistryIds"}

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers, params=querystring)

print(response.json())
```

```javascript
const url = 'https://{tenant_name}.benchling.com/api/v2/registries/registry_id/registered-entities:bulk-get?entityRegistryIds=entityRegistryIds';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```