Skip to main content
The audiopod CLI ships bundled with both SDKs. Same commands, same flags whether you pip install audiopod or npm install -g audiopod.

Install

pip install audiopod
Requires Python 3.8+.

Authenticate

Get an API key from your dashboard, then either:
audiopod login
# Paste ap_*  → stored at ~/.audiopod/config.json (mode 600)
…or set the environment variable:
export AUDIOPOD_API_KEY=ap_YOUR_KEY
Per-call override:
audiopod --api-key ap_OTHER_KEY music "test"

Commands

audiopod music

Generate a song, instrumental, rap, or vocal stem.
audiopod music "lo-fi rainy 90 BPM" --duration 60 --out song.wav
audiopod music "intro for podcast about climate" --kind instrumental --out intro.wav
audiopod music "uplifting wedding ballad" --lyrics "We met..." --kind song
Flags
FlagDefaultDescription
--kindsongOne of song, instrumental, rap, vocals.
--duration60Seconds (10–600).
--lyricsOptional lyric text for vocal modes.
--outIf set, the CLI waits for completion and downloads to this path.
--timeout600Max seconds to wait when --out is given.

audiopod tts

Synthesize speech.
audiopod tts "Welcome to AudioPod." --voice 368 --out hello.mp3
audiopod tts "Bienvenue à AudioPod." --voice 368 --lang fr --out hello-fr.mp3
Flags
FlagDefaultDescription
--voice368AudioPod voice ID (integer) or public catalog name.
--langenISO language code.
--speed1.0Multiplier (0.25–4.0).
--formatmp3mp3, wav, or ogg.
--outIf set, downloads on completion.

audiopod transcribe

Transcribe a local file or URL.
audiopod transcribe meeting.mp3 --diarize --format srt > meeting.srt
audiopod transcribe https://example.com/podcast.mp3 --lang en --format json
FlagDescription
--langForce a language (auto-detected if omitted).
--diarizeEmit speaker labels.
--formattext, srt, vtt, json.
--outWrite the transcript to a file.

audiopod stems

Separate audio into stems.
audiopod stems track.wav --mode six
audiopod stems https://example.com/song.mp3 --mode two
FlagDescription
--modetwo (vocal+instr), four (vocals/drums/bass/other), six (+guitar+piano), sixteen.

audiopod clone

Train a voice from a 5–30s reference clip.
audiopod clone reference.wav --name "Narrator" --description "Calm narrator voice"
FlagDescription
--name (required)Display name for the cloned voice.
--descriptionOptional voice characteristics description.

audiopod audiobook

Produce a finished, ACX-compliant audiobook from a manuscript — upload, narrate, export, and (with --out) download the package in one command.
audiopod audiobook book.epub --title "The Lighthouse Keeper" --author "A. P. Tester" --voice 387 --out lighthouse-acx.zip
audiopod audiobook --text "Once upon a time..." --title "A Short Tale" --voice 387
FlagDescription
<file>Manuscript file (PDF/EPUB/DOCX/TXT). Omit and use --text to narrate raw text.
--title (required)Audiobook title.
--authorAuthor name (written into the package metadata).
--textNarrate this text instead of a file.
--voiceNarration voice ID (default 387).
--outDownload the ACX package ZIP to this path.
--timeoutMax seconds to wait for the full pipeline (default 1800).

audiopod jobs

Look up any async job by id.
audiopod jobs job_abc123
audiopod jobs job_abc123 --json | jq .output_url

Output

Human-readable by default; pass --json for scripting:
audiopod tts "hi" --voice 368 --json | jq -r '.id'

Exit codes

CodeMeaning
0Success
1API or runtime error
2Bad arguments / missing API key
130Interrupted (Ctrl-C)

See also

MCP Server

Wire AudioPod into any agent.

Python SDK

Programmatic access from Python.

Node.js SDK

Programmatic access from Node.js / TypeScript.

For Agents landing

Every developer surface in one page.