> 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.

# List Translation items

GET https://{tenant_name}.benchling.com/api/v3/dna-sequence/{dna_sequence_id}/translations/items

List Translation items.

Reference: https://docs.benchling.com/docs/api/benchling-api/dna-sequence/translations-list

## Authentication

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

## Request

### Path parameters

- `dna_sequence_id` (string, required) — ID of the DnaSequence.

### Query parameters

- `nextToken` (string, optional) — Token for pagination
- `pageSize` (integer, optional) — Number of results to return. Defaults to 50, maximum of 100.

## Response

### 200

OK

- `items` (list of Translation, optional)
- `nextToken` (string, optional)

## Errors

### 400 Dna Sequence Translations List Request Bad Request Error

Bad Request

- `detail` (GeneralErrorDetail, required, nullable)
- `instance` (string, required)
- `status` (integer, required)
- `title` (string, required, nullable)
- `type` (string, required)
- `invalidId` (string, optional)

### 403 Dna Sequence Translations List Request Forbidden Error

Forbidden

- `detail` (GeneralErrorDetail, required, nullable)
- `instance` (string, required)
- `status` (integer, required)
- `title` (string, required, nullable)
- `type` (string, required)
- `invalidId` (string, optional)

### 404 Dna Sequence Translations List Request Not Found Error

Not Found

- `detail` (GeneralErrorDetail, required, nullable)
- `instance` (string, required)
- `status` (integer, required)
- `title` (string, required, nullable)
- `type` (string, required)
- `invalidId` (string, optional)

### 429 Dna Sequence Translations List Request Too Many Requests Error

Too Many Requests

- `detail` (TooManyRequestsErrorBodyDetail, required, nullable)
- `instance` (string, required)
- `status` (integer, required)
- `title` (string, required, nullable)
- `type` (string, required)
- `invalidId` (string, optional)

### 500 Dna Sequence Translations List Request Internal Server Error

Internal Server Error

- `detail` (InternalServerErrorBodyDetail, required, nullable)
- `instance` (string, required)
- `status` (integer, required)
- `title` (string, required, nullable)
- `type` (string, required)
- `errorId` (string, optional)

## Types

### Translation

Represents a protein-coding region (CDS) on a nucleotide sequence, showing the translated amino acid sequence. Translations can span a single contiguous region or multiple regions for spliced genes (see RegionsListItem). The aminoAcids field contains the computed protein sequence based on the geneticCode (see CodonTranslationTable). The translateFirstCodonToMethionine option forces the start codon to encode methionine regardless of the actual codon. Translations display as colored overlays on the sequence viewer, with the three-letter amino acid codes shown above the nucleotide bases.

- `__typename` (string, optional)
- `aminoAcids` (string, optional) — Calculated amino acid translation of the specified regions, combining codons across regions if necessary.
- `color` (string, optional) — Hex color when displaying the translation.
- `customFields` (list of CustomField, optional) — Custom fields on the translation.
- `geneticCode` (enum, optional) — Genetic code for the translation.
  - 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`, `KARYORELICT_NUCLEAR`, `CONDYLOSTOMA_NUCLEAR`, `MESODINIUM_NUCLEAR`, `PERITRICH_NUCLEAR`, `BLASTOCRITHIDIA_NUCLEAR`, `CEPHALODISCIDAE_MITOCHONDRIAL_UAA_TYR`
- `id` (string, optional) — The ID of the translation.
- `name` (string, optional) — Name of the translation.
- `notes` (string, optional) — Text notes on the translation.
- `nucleotideSequence` (NucleotideSequenceRef, optional) — The nucleotide sequence that this translation belongs to.
- `regions` (list of RegionsListItem, optional) — Array of regions of the translation. For single-region translations, this is an array with one element.
- `strand` (enum, optional) — Strand orientation for this translation: `FORWARD` or `REVERSE`.
  - Allowed values: `FORWARD`, `REVERSE`
- `translateFirstCodonToMethionine` (boolean, optional) — Whether or not the first codon has been forced to be translated as methionine.
- `end` (integer, optional, nullable, deprecated) — 0-based exclusive end index. For ranges ending at the end of a circular sequence, this value is always the length of the sequence, never 0. Use regions instead for location information.
- `start` (integer, optional, nullable, deprecated) — 0-based inclusive start index. Use regions instead for location information.

### GeneralErrorDetail

### TooManyRequestsErrorBodyDetail

### InternalServerErrorBodyDetail

### CustomField

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 entities, containers, datasets, and other Benchling objects without modifying their schemas. Objects that can have custom fields implement the HasCustomFields interface. Unlike schema-defined fields, custom fields are not validated against a schema and can be freely added or modified.

- `__typename` (string, optional)
- `name` (string, optional, nullable)
- `value` (string, optional, nullable)

### NucleotideSequenceRef

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

### RegionsListItem

Represents a contiguous position range within a Translation or other multi-region feature. For spliced genes or complex reading frames, a Translation may span multiple non-contiguous regions (exons) that are joined during translation. Each RegionsListItem defines one such segment using 0-based coordinates (start inclusive, end exclusive). For circular sequences, regions can wrap around, but the end value is always the sequence length rather than 0.

- `__typename` (string, optional)
- `end` (integer, optional) — 0-based exclusive end index. For ranges ending at the end of a circular sequence, this value is always the length of the sequence, never 0.
- `start` (integer, optional) — 0-based inclusive start index.

## Examples

**Response**

```json
{
  "items": [
    {
      "__typename": "__typename",
      "aminoAcids": "aminoAcids",
      "color": "color",
      "customFields": [
        {}
      ],
      "geneticCode": "STANDARD",
      "id": "id",
      "name": "name",
      "notes": "notes",
      "regions": [
        {}
      ],
      "strand": "FORWARD",
      "translateFirstCodonToMethionine": true
    }
  ],
  "nextToken": "nextToken"
}
```

**SDK Code**

```python
import requests

url = "https://{tenant_name}.benchling.com/api/v3/dna-sequence/dna_sequence_id/translations/items"

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

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

print(response.json())
```

```javascript
const url = 'https://{tenant_name}.benchling.com/api/v3/dna-sequence/dna_sequence_id/translations/items';
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);
}
```