---
title: "Google Lyria - Generate music from text"
method: POST
path: "/v1/ai/music-generation/google-lyria"
tags: ["music-generation"]
---

# Google Lyria - Generate music from text

`POST /v1/ai/music-generation/google-lyria`

## Request

- Base URL: `https://api.magnific.com`
- URL: `https://api.magnific.com/v1/ai/music-generation/google-lyria`
- Auth: API key in header `x-magnific-api-key`

Generate original 30-second music tracks from text descriptions using Google Lyria.

Create high-quality instrumental music by describing the genre, mood, instruments, and tempo you want. Ideal for video production, games, podcasts, and multimedia projects.

Each request produces a single track with a fixed duration of 30 seconds.

**Tips for effective prompts:**
- Include genre: "lo-fi hip hop", "orchestral", "synthwave", "acoustic folk"
- Describe mood: "uplifting", "melancholic", "energetic", "relaxed"
- Mention instruments: "piano", "strings", "electric guitar", "808 drums"
- Add tempo hints: "slow tempo", "upbeat", "driving rhythm"

## Request body

- Request15
  - `prompt` string, required: Text description of the music you want to generate with Google Lyria. Be specific about genre, mood, instruments, and tempo for best results. **Tips for effective prompts:** - Include genre: "lo-fi hip hop", "orchestral", "synthwave", "acoustic folk" - Describe mood: "uplifting", "melancholic", "energetic", "relaxed" - Mention instruments: "piano", "strings", "electric guitar", "808 drums" - Add tempo hints: "slow tempo", "upbeat", "driving rhythm"
  - `negative_prompt` string: Text describing elements to avoid in the generated track, such as unwanted instruments, styles, or moods.
  - `seed` integer: Seed for reproducible generation. Using the same prompt and seed returns a consistent result across requests. Omit to get a random seed on each request.
  - `webhook_url` string, uri: Optional callback URL that will receive asynchronous notifications whenever the task changes status. The payload sent to this URL is the same as the corresponding GET endpoint response, but without the data field.

## Response `200`

OK - The task exists and the status is returned

- InlineObject4
  - `data` TaskDetail1, required
    - `task_id` string, uuid, required: Task identifier
    - `status` 'CREATED' | 'IN_PROGRESS' | 'COMPLETED' | 'FAILED', required: Task status
    - `generated` string[], required

## Other responses

- `400`: Bad Request - The server could not understand the request due to invalid syntax.
- `401`: Unauthorized - The client must authenticate itself to get the requested response.
- `500`: Internal Server Error - The server has encountered a situation it doesn't know how to handle.
- `503`: Service Unavailable

---

[API](https://skmtc.dev/magnific/apis/magnific-api.md) · [All operations](https://skmtc.dev/magnific/apis/magnific-api/llms.txt) · [OpenAPI document](https://skmtc.dev/magnific/apis/magnific-api/revisions/60711fb082c7?raw)
