Skip to main content
POST
save project
MCP tool: podcast_save_project. OAuth scope: podcast.write.

Authorizations

X-Api-Key
string
header
required

Headers

Idempotency-Key
string

Replay a completed identical request without repeating side effects.

Maximum string length: 128

Body

application/json

Project script and presentation settings

project_id
string
required
aspect_ratio
integer

Aspect ratio: 0 = 9:16; 1 = 16:9; 2 = 1:1.

audio_enhancement_enabled
boolean

Whether to enhance audio. Preserves the saved setting when omitted.

copy_from
integer
first_speaker
integer

First speaker: 1 = left or top; 2 = right or bottom.

gpt_sell_text
object[]

Script content.

image_podcast_template_id
integer

Image Podcast template ID. Providing it selects the Image Podcast workflow.

persons
object[]

One or two selected avatars. A single avatar requires speaker_count=1. Takes precedence over podcast_avatar_id.

podcast_avatar_id
integer

Podcast avatar ID.

podcast_template_id
integer
render_subtitle
integer

Subtitle rendering: 1 = enabled; 2 = disabled.

scene
object

Scene settings, including subtitle settings for standard Podcasts.

scenes
object[]

B-roll assets per scene. When nonempty, entries correspond to gpt_sell_text scenes by index.

speaker_count
integer

Speaker count: 1 or 2. Preserves the project's saved value when omitted.

timbre_configs
object[]

Host voice settings, in the same order as timbre_unique_id. null uses the server defaults.

timbre_unique_id
string[]

Two unique voice IDs: the left host first, then the right host.

url
string

Updated audio URL for audio-driven input.

Response

OK

cause
string
code
integer
data
object
details
any
msg
string
rid
string