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

# Get NucleotideAlignment by ID

GET https://{tenant_name}.benchling.com/api/v3/nucleotide-alignment/{nucleotide_alignment_id}

Get a single NucleotideAlignment by ID.

Reference: https://docs.benchling.com/docs/api/benchling-api/nucleotide-alignment/get

## Authentication

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

## Request

### Path parameters

- `nucleotide_alignment_id` (string, required) — ID of the NucleotideAlignment.

### Query parameters

- `returning` (string, optional) — Comma-separated list of top-level fields to include in each returned item. Cannot overlap with omit.
- `omit` (string, optional) — Comma-separated list of top-level fields to omit from each returned item. Cannot overlap with returning.

## Response

### 200

OK

- `__typename` (string, optional)
- `alignedNucleotideSequences` (string, optional) — The individual sequence rows in the alignment, including the reference sequence and each aligned read or input sequence. Each row contains the gapped bases and trim boundaries that define the high-quality region used for alignment and pairwise identity calculations.
- `alignmentType` (enum, optional) — The type of the Alignment, whether it is a consensus or template alignment.
  - Allowed values: `TEMPLATE`, `CONSENSUS`
- `createdAt` (string, optional) — DateTime the Alignment was created.
- `id` (string, optional) — The ID of the Alignment.
- `modifiedAt` (string, optional) — DateTime the Alignment was last modified.
- `name` (string, optional) — The name of the Alignment.
- `referenceSequence` (NucleotideSequenceRef, optional) — The reference NucleotideSequence for the alignment. For template alignments, this is the template sequence that other sequences are compared against. For consensus alignments, this is the derived consensus sequence.

## Errors

### 400 Nucleotide Alignment Get 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 Nucleotide Alignment Get 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 Nucleotide Alignment Get 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 Nucleotide Alignment Get 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)
- `violated-policies` (list of enum, optional) — The budget policies that rejected the request, in canonical order: `user`, `integration`, then `tenant`.
  - Allowed values: `user`, `integration`, `tenant`

### 500 Nucleotide Alignment Get 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

### NucleotideSequenceRef

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

### GeneralErrorDetail

### TooManyRequestsErrorBodyDetail

### InternalServerErrorBodyDetail

## Examples

**Response**

```json
{
  "__typename": "__typename",
  "alignedNucleotideSequences": "alignedNucleotideSequences",
  "alignmentType": "TEMPLATE",
  "createdAt": "createdAt",
  "id": "id",
  "modifiedAt": "modifiedAt",
  "name": "name",
  "referenceSequence": {
    "__typename": "__typename",
    "id": "id"
  }
}
```

**SDK Code**

```python
import requests

url = "https://{tenant_name}.benchling.com/api/v3/nucleotide-alignment/nucleotide_alignment_id"

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

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

print(response.json())
```

```javascript
const url = 'https://{tenant_name}.benchling.com/api/v3/nucleotide-alignment/nucleotide_alignment_id';
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);
}
```