# Lyria 3.5 (`lyria_3_5`)

> Lyria 3.5 by Google. Full songs up to about 3 minutes with vocals and lyrics, or instrumentals; set length and structure in the prompt.

- Capability: Music (tool `music`) — Music
- Price: from $0.10 per run (1 credit = $0.01). Exact price for a request: POST https://api.varg.ai/v2/estimate
- Typical time: ~2 min
- JSON Schema: https://api.varg.ai/v2/tools/music?model=lyria_3_5 (public, no key)
- Try it: https://varg.ai/dashboard/tools/playground?model=lyria_3_5

## Call it

REST: `POST https://api.varg.ai/v2/tools/music/call` with `Authorization: Bearer $VARG_API_KEY` (create a key at https://varg.ai/dashboard/api).
It answers `202` with a job right away. Poll `GET /v2/jobs/{id}` until `status` is `completed`, then read `output.outputs[0].url` — or pass `options.webhook_url` and get the finished job POSTed to you.

```bash
curl -X POST https://api.varg.ai/v2/tools/music/call \
  -H "Authorization: Bearer $VARG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "lyria_3_5",
  "prompt": "A 90-second synthwave track with a female vocal hook about city lights. [0:00-0:15] Intro: arpeggiated synths. [0:15-0:45] Verse. [0:45-1:30] Chorus.",
  "duration": 5
}'
```

MCP: the varg server `https://mcp.varg.ai/mcp` (OAuth sign-in, no key) runs it with `call_tool`:

```json
{
  "tool": "music",
  "input": {
    "model": "lyria_3_5",
    "prompt": "A 90-second synthwave track with a female vocal hook about city lights. [0:00-0:15] Intro: arpeggiated synths. [0:15-0:45] Verse. [0:45-1:30] Chorus.",
    "duration": 5
  },
  "wait": true
}
```

## Inputs

| field | type | required | default | allowed | description |
|---|---|---|---|---|---|
| `model` | string | yes | — | `lyria_3_5` or a route key below | Which model runs the job. |
| `prompt` | string | yes | — | — | — |
| `duration` | integer | no | — | 1–600 | — |

Media inputs are URLs. Upload a local file first with `POST /v2/files` and pass the returned URL.

## Provider options

Optional, per provider, under `provider_options.<provider>`. Only the options of the provider that runs the job apply — pin a route to choose it.

### provider_options.fal

| field | type | required | default | allowed | description |
|---|---|---|---|---|---|
| `prompt` | string | no | — | — | The text prompt describing the music you want to generate. Include genre, mood, instrumentation, tempo, vocals, and structure for best results. Lyria 3.5 supports full-length songs up to a few minutes — use timestamps or duration hints in your prompt to control song length, e.g. 'a 2-minute track' or section markers like '[0:00-0:30] Intro: ...' / '[0:30-1:00] Verse: ...'. Supports English, German, Spanish, French, Hindi, Japanese, Korean, and Portuguese. |
| `negative_prompt` | string | no | — | — | Negative prompting is not supported by Lyria 3.5. |
| `image_url` | string (URL) | no | — | — | — |

## Routes

`"model": "lyria_3_5"` picks a route automatically (priority order, then the inputs you send). To pin one, pass its key as `model`.

| model key | provider | modality | price from | typical time |
|---|---|---|---|---|
| `fal:google/lyria-3.5` | fal | music | $0.10 | ~2 min |

---

Catalog version 2026-11-11T12:59:09.901887+00:00. All models: https://varg.ai/models/llms.txt
