> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mountsea.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Sounds

> task=sound — one-shot or loop, always instrumental

Sounds tab. Always instrumental. `sound.description` is the official tags **and** the title (title case, cut at 80 characters with `...`). Any `prompt` or `tags` you send are overwritten. `max_mode` is **HTTP 400**.

`POST /suno/v2/generate` returns `{ "taskId" }`. Poll [Get Task Status](/api-reference/suno/task). Schema: `GET /suno/v2/generate/schema?task=sound`.

## Parameters

| Field | Required | Notes |
| - | - | - |
| `task` | Yes | `"sound"` |
| `model` | Yes | `chirp-v6` |
| `sound.description` | Yes | What the sound is. Sent upstream as tags, unchanged |
| `sound.type` | No | `"one_shot"` (default) or `"loop"`. Only `loop` sets `sound_configs.user_loop` |
| `sound.key` | No | Omit = Any. See the table below. Invalid key → **400** |
| `sound.bpm` | No | 1–300 → `user_tempo`. Omit = Auto |

Do not send `max_mode`.

## Key

Omit `sound.key` for Any (`user_key` is not sent). Anything not in the table is **HTTP 400**.

Write a space before `maj` or `min`: `"G maj"`, not `"Gmaj"` or `"G major"`. Natural notes are sent unchanged. Major drops ` maj`. Minor replaces ` min` with `m`. `"G"` and `"G maj"` both become `"G"`. `"A min"` becomes `"Am"`.

| Note | Natural | Major | Minor |
| - | - | - | - |
| C | `C` → `C` | `C maj` → `C` | `C min` → `Cm` |
| C# | `C#` → `C#` | `C# maj` → `C#` | `C# min` → `C#m` |
| D | `D` → `D` | `D maj` → `D` | `D min` → `Dm` |
| D# | `D#` → `D#` | `D# maj` → `D#` | `D# min` → `D#m` |
| E | `E` → `E` | `E maj` → `E` | `E min` → `Em` |
| F | `F` → `F` | `F maj` → `F` | `F min` → `Fm` |
| F# | `F#` → `F#` | `F# maj` → `F#` | `F# min` → `F#m` |
| G | `G` → `G` | `G maj` → `G` | `G min` → `Gm` |
| G# | `G#` → `G#` | `G# maj` → `G#` | `G# min` → `G#m` |
| A | `A` → `A` | `A maj` → `A` | `A min` → `Am` |
| A# | `A#` → `A#` | `A# maj` → `A#` | `A# min` → `A#m` |
| B | `B` → `B` | `B maj` → `B` | `B min` → `Bm` |

The right-hand side of each cell is upstream `user_key`. Loop + `G maj` + Auto becomes `{ "user_key": "G", "user_loop": true }`. Add `"bpm": 120` and the object also gets `"user_tempo": 120`.

## Example

```json theme={null}
{
  "task": "sound",
  "model": "chirp-v6",
  "sound": {
    "description": "Fast cinematic whoosh transition, airy stereo sweep, soft bass hit at the end, clean and short, no reverb tail mush",
    "type": "loop",
    "key": "G maj"
  }
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.