---
title: "List Voice Blocks"
method: GET
path: "/voiceover/{project_id}/blocks"
tags: ["voiceover"]
---

# List Voice Blocks

`GET /voiceover/{project_id}/blocks`

## Request

- Base URL: `https://api.framesail.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.framesail.com/voiceover/{project_id}/blocks`
- Auth: HTTP bearer

Return all voice blocks for the project's active script.

## Path parameters

- `project_id` string, required

## Response `200`

Successful Response

- VoiceBlocksResponse
  - `blocks` VoiceBlockRow[]
    - `id` string, required
    - `script_id` string, required
    - `project_id` string, required
    - `block_index` integer, required
    - `speaker` string, required
    - `text` string, required
    - `type` 'narration' | 'dialogue', required
    - `scene_direction` string, nullable
    - `voice_id` string, nullable
    - `audio_storage_path` string, nullable
    - `audio_url` string, nullable
    - `subtitle_data` object[], nullable
    - `duration_ms` integer, nullable
    - `volume` number, nullable
  - `total_duration_ms` integer
  - `all_complete` boolean

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/framesail/apis/framesail-api.md) · [All operations](https://skmtc.dev/framesail/apis/framesail-api/llms.txt) · [OpenAPI document](https://skmtc.dev/framesail/apis/framesail-api/revisions/12602eae0820?raw)
