cURL
curl \
--request POST \
--url "https://api.breeze.blue/v1/studio/projects/prj_example/chapters" \
--header "xi-api-key: $BREEZE_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"expected_edit_token": "replace_with_current_edit_token",
"operation_id": "123e4567-e89b-42d3-a456-426614174000",
"title": "Opening"
}'from breeze_blue import BreezeBlue
client = BreezeBlue()
result = client.studio.chapters.create("prj_example", {
"expected_edit_token": "replace_with_current_edit_token",
"operation_id": "123e4567-e89b-42d3-a456-426614174000",
"title": "Opening",
})import { BreezeBlueClient } from "@breeze.blue/sdk";
const client = new BreezeBlueClient();
const result = await client.studio.chapters.create("prj_example", {
expectedEditToken: "replace_with_current_edit_token",
operationId: "123e4567-e89b-42d3-a456-426614174000",
title: "Opening",
});{
"project": {
"id": "<string>",
"title": "<string>",
"description": "<string>",
"tts_settings": {
"model": "<string>",
"language": "<string>",
"generation_language": "<string>",
"guidance_scale": 123
},
"default_voice_id": "<string>",
"default_instructions": "<string>",
"default_silence_ms": 123,
"edit_token": "<string>",
"created_at": "<string>",
"updated_at": "<string>",
"chapter_count": 123,
"clip_count": 123
},
"edit_token": "<string>",
"client_refs": {},
"created_ids": [
"<string>"
]
}{
"code": "<string>",
"detail": "<string>",
"error": "<string>",
"ok": false,
"meta": {}
}{
"code": "<string>",
"detail": "<string>",
"error": "<string>",
"ok": false,
"meta": {}
}{
"code": "<string>",
"detail": "<string>",
"error": "<string>",
"ok": false,
"meta": {}
}{
"code": "<string>",
"detail": "<string>",
"error": "<string>",
"ok": false,
"meta": {}
}{
"code": "<string>",
"detail": "<string>",
"error": "<string>",
"ok": false,
"meta": {}
}Studio
Create a chapter
Append an empty chapter to the project. Its ID is returned in created_ids.
POST
/
v1
/
studio
/
projects
/
{project_id}
/
chapters
cURL
curl \
--request POST \
--url "https://api.breeze.blue/v1/studio/projects/prj_example/chapters" \
--header "xi-api-key: $BREEZE_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"expected_edit_token": "replace_with_current_edit_token",
"operation_id": "123e4567-e89b-42d3-a456-426614174000",
"title": "Opening"
}'from breeze_blue import BreezeBlue
client = BreezeBlue()
result = client.studio.chapters.create("prj_example", {
"expected_edit_token": "replace_with_current_edit_token",
"operation_id": "123e4567-e89b-42d3-a456-426614174000",
"title": "Opening",
})import { BreezeBlueClient } from "@breeze.blue/sdk";
const client = new BreezeBlueClient();
const result = await client.studio.chapters.create("prj_example", {
expectedEditToken: "replace_with_current_edit_token",
operationId: "123e4567-e89b-42d3-a456-426614174000",
title: "Opening",
});{
"project": {
"id": "<string>",
"title": "<string>",
"description": "<string>",
"tts_settings": {
"model": "<string>",
"language": "<string>",
"generation_language": "<string>",
"guidance_scale": 123
},
"default_voice_id": "<string>",
"default_instructions": "<string>",
"default_silence_ms": 123,
"edit_token": "<string>",
"created_at": "<string>",
"updated_at": "<string>",
"chapter_count": 123,
"clip_count": 123
},
"edit_token": "<string>",
"client_refs": {},
"created_ids": [
"<string>"
]
}{
"code": "<string>",
"detail": "<string>",
"error": "<string>",
"ok": false,
"meta": {}
}{
"code": "<string>",
"detail": "<string>",
"error": "<string>",
"ok": false,
"meta": {}
}{
"code": "<string>",
"detail": "<string>",
"error": "<string>",
"ok": false,
"meta": {}
}{
"code": "<string>",
"detail": "<string>",
"error": "<string>",
"ok": false,
"meta": {}
}{
"code": "<string>",
"detail": "<string>",
"error": "<string>",
"ok": false,
"meta": {}
}Continue building
Manage Studio projects
Import scripts, edit safely, and retry writes.
Move clips
Move clips between chapters.
Studio CLI
Run the same operations from a terminal.
Authorizations
Breeze Developer API key.
Path Parameters
Studio project ID, such as prj_….
Body
application/json
edit_token from your latest read or write of this project. A stale token returns 409.
Required string length:
1 - 128New UUID for each write. Retrying with the same ID and body returns the original result instead of repeating the write.
Chapter title.
Required string length:
1 - 200Response
The updated project.
The project after this request.
Show child attributes
Show child attributes
Current edit_token. Send it as expected_edit_token on the next write.
Import only: each client_ref mapped to its created ID.
Show child attributes
Show child attributes
IDs created by this request, in order.

