---
title: "List Dubbing Language Targets"
method: GET
path: "/v1/dubbing/project/{project_id}/language"
tags: ["Dubbing"]
---

# List Dubbing Language Targets

`GET /v1/dubbing/project/{project_id}/language`

List a project's language targets, cursor-paginated, each with signed output URLs once it has produced an output.

## Path parameters

- `project_id` string, required — Identifier of the parent dubbing project.

## Query parameters

- `cursor` string, nullable — Pass the `next_cursor` from a previous response to fetch the page after it. Omit for the first page.
- `page_size` integer — Number of language targets per page. Clamped to between 1 and 100 rather than rejected, so a larger value returns a full page.
- `status` string, nullable — Filter to targets in this status: `queued`, `processing`, `completed`, `stale`, or `failed`. Omit to return every status.

## Headers

- `xi-api-key` string, nullable — Your API key. This is required by most endpoints to access our API programmatically. You can view your xi-api-key using the 'Profile' tab on the website.

## Response `200`

Successful Response

- DubbingLanguageListResponse
  - `languages` DubbingLanguageResponse[], required — The page of language targets for the project.
    - `language_id` string, required — Unique identifier of the language target.
    - `project_id` string, required — Identifier of the parent dubbing project.
    - `target_language` string, required — BCP-47 language tag this target is dubbed into.
    - `status` 'queued' | 'processing' | 'completed' | 'stale' | 'failed', required — Lifecycle status: `queued` (waiting on the project to be ready, or on a worker), `processing` while it is being dubbed, `completed` once its output is available, `stale` when the transcript changed after the output was produced, or `failed`.
    - `model_id` string, nullable — Dubbing model this target is dubbed with, inherited from the project and not selectable per language.
    - `voice_settings` VoiceSettings
      - `cloning_strength` integer — How strongly the dubbed speakers clone the source voices, 0 to 10.
    - `outputs` DubbingLanguageOutputs — Signed, time-limited download URLs for a language target's outputs.
      - `lossless_audio` string, nullable — Signed URL for the dubbed lossless audio track, in FLAC. The link expires one hour after it is issued; re-read the language target for a fresh one.
    - `revision` integer, required — Monotonic counter incremented whenever this target's transcript changes (a source edit affecting it, or an edit to its translation).
    - `output_revision` integer, nullable — The `revision` the current dubbed output was generated from; equal to `revision` when up to date, and lower when `stale`. This is null until a generation has completed.
    - `error` DubbingError
      - `code` string, required — Stable identifier for the failure, safe to branch on. New codes are added over time, so we recommend treating an unrecognized value as `internal_error`.
      - `message` string, required — Human-readable description of the failure, for display. The wording may change at any time, so we recommend branching on `code` instead.
      - `retryable` boolean, required — Whether resubmitting the same input could succeed. A value of false means the failure describes the input or the account, so an identical retry will fail the same way.
    - `warnings` VoicesNotPermittedWarning[] — Non-fatal conditions raised while dubbing this language, empty when there are none. Reflects the latest generation. Conditions raised while preparing the source are reported on the project instead.
      - `type` 'voices_not_permitted', required — Identifies this warning; branch on it to read the other fields.
      - `speaker_ids` string[], required — Speakers whose voices were not permitted for cloning. The dub used a replacement voice for each of them; all other speakers are unaffected.
      - `message` string, required — Human-readable description of the warning, for display. The wording may change at any time, so we recommend branching on `type` instead.
    - `created_at` string, date-time, required — When the language target was created.
    - `updated_at` string, date-time, required — When the language target was last updated.
  - `next_cursor` string, nullable — Opaque cursor to pass back as `cursor` for the next page, or null when there are no more results.

## Other responses

- `422` — Validation Error

## Changes

- **2026-08-06** `1cae8adcc965` — 2 info
  - added the optional property `languages/items/error` to the response with the `200` status
  - added the optional property `languages/items/warnings` to the response with the `200` status

[Change history](https://skmtc.dev/elevenlabs/apis/elevenlabs-api-documentation/changes/v1/dubbing/project/:project_id/language/get.md)

---

[API](https://skmtc.dev/elevenlabs/apis/elevenlabs-api-documentation.md) · [All operations](https://skmtc.dev/elevenlabs/apis/elevenlabs-api-documentation/llms.txt) · [OpenAPI document](https://skmtc.dev/elevenlabs/apis/elevenlabs-api-documentation/revisions/48a38e3b0dbd?raw)
