Capability
Audio to Prompt
Turn a song into a reusable style prompt, an instrumental prompt and its lyrics tagged by section, ready for the song and music generators.
Native only — new capability
No compat route exists for Audio to Prompt. Call POST /v1/generations with the tool_id for model="v1", operation="audio_to_prompt" (see the Tool Catalog).
audio_to_prompt — native payload
POST/v1/generationstool_id for (model="v1", "audio_to_prompt")
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
| song | file input | Yes | — | The song to describe, up to 10 minutes. A file over 24MB is read from a compressed copy. |
| language | string | No | "" | Optional ISO 639-1 code for the lyrics, e.g. 'en', 'hi', 'es'. Leave blank to detect it. The prompts are always in English. |
curl -X POST https://apiv2.soundverse.ai/v1/generations \
-H "Authorization: Bearer sksoundverse_..." \
-H "Content-Type: application/json" \
-H "Idempotency-Key: audio-to-prompt-req-001" \
-d '{
"tool_id": "<audio_to_prompt tool_id>",
"payload_json": "{\"song\": {\"url\": \"https://example.com/track.mp3\"}}"
}'What it does
- Listens to the song for its genre, mood, energy, instruments, production and vocals.
- Measures its tempo and key, and finds its sections (intro, verse, chorus…).
- Reads the lyrics, from the file’s saved timed lyrics when it has them, and tags them by section. The words are kept exactly as sung.
- Writes a style prompt and an instrumental prompt. Prompts never name an artist or a song.
Listening and writing must succeed. If tempo and key, the sections or the lyrics can’t be read, that step is skipped and the prompts are written without it.
Response
Once the task completes, its output has this shape:
{
"text": "A high-energy Latin pop anthem...\n\n**Style prompt**\n```\n...\n```\n...",
"vocal_gender": "male",
"has_vocals": true,
"bpm": 100.5,
"key": "Eb major",
"genres": ["Latin Pop", "Cumbia Pop"],
"mood": ["festive", "triumphant"],
"instruments": ["brass section", "drum kit", "synth bass"],
"sections": [{"label": "intro", "start": 0.0, "end": 8.2}, ...],
"summary": "A high-energy Latin pop anthem at 100 BPM in Eb major.",
"style_prompt": "Latin Pop, Cumbia Pop, festive, triumphant, 100 BPM, Eb major, bright male tenor lead, ...",
"instrumental_prompt": "Latin Pop, Cumbia Pop, festive, triumphant, 100 BPM, Eb major, punchy brass hooks, ...",
"lyrics": "[Verse]\nEn el potrero suena la pelota...\n\n[Chorus]\n...",
"steps": [...]
}textis the whole result as Markdown: the summary, then each prompt and the lyrics in their own code block.style_promptandinstrumental_promptare at most 1,024 characters each;lyricsis at most 3,000, cut at the last whole section that fits.lyricsis empty for an instrumental.bpmis 0 andkeyis empty when they can’t be measured.vocal_genderisfemale,male, or empty when unclear.
Pricing
| Version | Price |
|---|---|
| v1 | $0.25 |
USD flat price per run, regardless of license tier.
USD per song, the same on every license tier. Rate limit: 30 calls an hour, 150 a day.