REST API
Configuration Reference
Interactive builder and full reference for every option in the REST API.
Every option goes inside the config object of your POST /v2/edits request.
Option reference
All options go inside the config object of your request body. Values are flat — not nested with .enabled.
Audio cleaning
| Option | Type | Default | Description |
|---|---|---|---|
fillers | boolean | false | Remove "um", "uh", "like", and similar filler words |
long_silences | boolean | false | Trim long pauses and gaps between sentences |
mouth_sounds | boolean | false | Remove clicks, lip smacks, and tongue sounds |
breath | boolean | string | false | Remove audible breathing between sentences |
stutters | boolean | false | Remove repeated word fragments ("I— I— I think") |
hesitations | boolean | false | Remove short hesitation sounds that aren't full filler words |
muted | boolean | false | Silence edits instead of cutting — preserves original timing |
Filler and hesitation detection is language-aware. English, German, and Romanian have the most accurate models. See supported languages.
breath options:
| Value | Behavior |
|---|---|
true | Recommended for most audio. Best default for challenging recordings. |
"legacy" | Conservative removal. Safer choice for already-clean recordings. |
"natural" | Lighter touch — preserves more of the original breathing feel. |
false | Disabled (default). |
Audio enhancement
| Option | Type | Default | Description |
|---|---|---|---|
remove_noise | boolean | true | Reduce hiss, hum, fan noise, and background sounds. On by default; pass false to disable it. |
studio_sound | boolean | string | false | Aggressive enhancement for studio-quality output. |
normalize | boolean | false | Balance volume levels throughout the file |
keep_music | boolean | false | Preserve music sections during noise reduction |
autoeq | boolean | false | Legacy automatic EQ option. Prefer studio_sound; autoeq will be removed in a future release. |
studio_sound options:
| Value | Behavior |
|---|---|
true | Recommended. Applies aggressive studio-quality enhancement. |
"nightly" | Advanced/experimental variant. Currently behaves similarly to true. |
false | Disabled (default). |
studio_sound is more aggressive than remove_noise. For most recordings, remove_noise alone is sufficient.
Output
| Option | Type | Default | Description |
|---|---|---|---|
export_format | string | "auto" | Audio-only output format: "mp3", "wav", "flac", "m4a", or "auto" (matches input). Video jobs keep the original video container format. |
target_lufs | number | -16 | Target integrated loudness in LUFS. -16 is the standard for podcasts |
mute_lufs | number | -120 | Gate level for LUFS measurement. Default -120 disables gating. |
export_timestamps | boolean | false | Return a JSON file with edit markers for use in a DAW or NLE |
Content generation
| Option | Type | Default | Description |
|---|---|---|---|
transcription | boolean | false | Full word-by-word transcript. Language auto-detected. |
summarize | boolean | false | Chapter markers, key learnings, and episode summary. Enables transcription automatically. |
social_content | boolean | false | Generate tweets, LinkedIn posts, and show notes. Enables summarize automatically. |
Delivery
| Option | Type | Default | Description |
|---|---|---|---|
signed_url | string | null | Pre-signed PUT URL. Cleanvoice uploads directly to your storage instead of hosting the file. |
Advanced
| Option | Type | Default | Description |
|---|---|---|---|
merge | boolean | false | Multi-track only. Merge all tracks into a single output file. If you need automatic level balancing for a merged multi-track job, use automix as the companion option. |
audio_for_edl | boolean | false | Video workflows only. Return additional uncut enhanced audio alongside the edited video for EDL/NLE work. |
video | boolean | false | Must be set to true for video editing. Without it, the file is treated as audio-only and you will not get an edited video back. |
Full example
{
"input": {
"files": ["https://example.com/episode.mp3"],
"config": {
"remove_noise": true,
"studio_sound": true,
"normalize": true,
"fillers": true,
"long_silences": true,
"export_format": "mp3",
"transcription": true,
"summarize": true
}
}
}Multi-track note
Multi-track is not batch processing. When you pass multiple files, they are treated as separate tracks of the same recording (e.g. separate mics). To process independent files, create a separate request for each one.