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

# Create a music or sound generation task

> Music and audio generation submission API, compatible with the legacy `/suno/submit/music` path. Returns a task ID, which can later be queried through `/suno/fetch/{task_id}`.

Music and audio generation task submission API. The path remains `/suno/submit/music`, and you can choose the generation engine via `upstream_model`, `music_model`, `engine`, `model_id`, or `modelId`. The create API returns `task_id`, which can then be used to query the output through `/suno/fetch/{task_id}`.

If `upstream_model` is not provided (or only `{"model":"suno_music"}` is provided), Suno v5.5 is used by default. To continue using the legacy Suno version, explicitly pass `"upstream_model":"suno-v5"`.

## New models

| Type | `upstream_model` / Alias | `modelId` |
| --- | --- | ---: |
| Music | `suno-v5.5` / `chirp-fenix` | 128 |
| Sound | `seed-audio-1.0` | 126 |
| Sound | `minimax-speech-2.8-hd` / `speech-2.8-hd` | 127 |
| Music | `lyria-3-pro` / `lyria-3-pro-preview` | 129 |

## Prompt Description Mode

Suitable for describing only the style, mood, language, singer type, and scenario, with the model automatically generating the song content.

```json
{
  "model": "suno_music",
  "upstream_model": "suno-v5.5",
  "prompt": "Create an energetic retro-pop DJ song about the artificial intelligence revolution.",
  "make_instrumental": false
}
```

## Audio generation

MiniMax Speech can override voice parameters via `extraParams` (or top-level same-name snake_case/camelCase fields).

```json
{
  "model": "suno_music",
  "upstream_model": "minimax-speech-2.8-hd",
  "prompt": "欢迎使用新版语音生成服务。",
  "extraParams": {
    "voice": "moss_audio_ce44fc67-7ce3-11f0-8de5-96e35d26fb85",
    "outputFormat": "mp3",
    "sampleRate": 32000,
    "speed": 1,
    "volume": 1,
    "pitch": 0
  }
}
```

When no voice parameters are provided for MiniMax Speech, the server sends `voice`, `outputFormat=mp3`, `sampleRate=32000`, `speed=1`, `volume=1`, and `pitch=0` from the example above by default.

Lyria 3 Pro uses `upstream_model=lyria-3-pro` (or `lyria-3-pro-preview`):

```json
{
  "model": "suno_music",
  "upstream_model": "lyria-3-pro",
  "prompt": "Cinematic orchestral music with a hopeful finale."
}
```

## Light Music or Instrumental Only

You can use `light_music=true` or `make_instrumental=true`. `light_music` indicates a preference for light music/background music, and `make_instrumental` indicates that no sung vocals will be generated.

```json
{
  "model": "suno_music",
  "upstream_model": "minimax-music-v2.6",
  "prompt": "Warm cafe background music with soft piano and strings, relaxing and cinematic.",
  "light_music": true,
  "make_instrumental": true
}
```

## Advanced Lyrics Mode

Suitable when the business side has already prepared the lyrics and needs to specify the title and style tags. `custom_mode=true` can be passed, and the lyrics field can use `lyrics`, `lyric`, `custom_lyrics`, or `customLyrics`.

```json
{
  "model": "suno_music",
  "upstream_model": "mureka-v9",
  "custom_mode": true,
  "title": "Summer Sea Breeze",
  "tags": "electro pop, female vocal, bright summer",
  "lyrics": "[Verse]\nSea breeze moves across the white sand\n[Chorus]\nTurn the summer into a beam of light"
}
```

## Query

After creation succeeds, save the returned `data` task ID, such as `task_xxx`, and call `GET /suno/fetch/{task_id}` to query the status, audio URL, cover, title, lyrics, and the upstream raw fragment information.



## OpenAPI

````yaml api-reference/en/openapi.json POST /suno/submit/music
openapi: 3.0.0
info:
  title: Overseas Expansion Camp API Reference Documentation
  version: 1.0.0
  description: Public AI Gateway API Reference
servers:
  - url: https://api.aiid.edu.kg
security:
  - BearerAuth: []
tags:
  - name: OpenAI format (Chat)
  - name: OpenAI Format (Responses)
  - name: Gemini Format for Image Generation
  - name: Image generationOpenAI DALL-E format
  - name: List models
  - name: Video generationHappyHorse and Wan
  - name: Video generation Kling format
  - name: Video generation Omni and Veo formats
  - name: Video generation Seedance
  - name: Video generation Sora compatible formats
  - name: Video generation Vidu
  - name: Music generation task format
paths:
  /suno/submit/music:
    post:
      tags:
        - Music generation task format
      summary: Create a music or sound generation task
      description: >-
        Music and audio generation submission API, compatible with the legacy
        `/suno/submit/music` path. Returns a task ID, which can later be queried
        through `/suno/fetch/{task_id}`.


        Music and audio generation task submission API. The path remains
        `/suno/submit/music`, and you can choose the generation engine via
        `upstream_model`, `music_model`, `engine`, `model_id`, or `modelId`. The
        create API returns `task_id`, which can then be used to query the output
        through `/suno/fetch/{task_id}`.


        If `upstream_model` is not provided (or only `{"model":"suno_music"}` is
        provided), Suno v5.5 is used by default. To continue using the legacy
        Suno version, explicitly pass `"upstream_model":"suno-v5"`.


        ## New models


        | Type | `upstream_model` / Alias | `modelId` |

        | --- | --- | ---: |

        | Music | `suno-v5.5` / `chirp-fenix` | 128 |

        | Sound | `seed-audio-1.0` | 126 |

        | Sound | `minimax-speech-2.8-hd` / `speech-2.8-hd` | 127 |

        | Music | `lyria-3-pro` / `lyria-3-pro-preview` | 129 |


        ## Prompt Description Mode


        Suitable for describing only the style, mood, language, singer type, and
        scenario, with the model automatically generating the song content.


        ```json

        {
          "model": "suno_music",
          "upstream_model": "suno-v5.5",
          "prompt": "Create an energetic retro-pop DJ song about the artificial intelligence revolution.",
          "make_instrumental": false
        }

        ```


        ## Audio generation


        MiniMax Speech can override voice parameters via `extraParams` (or
        top-level same-name snake_case/camelCase fields).


        ```json

        {
          "model": "suno_music",
          "upstream_model": "minimax-speech-2.8-hd",
          "prompt": "欢迎使用新版语音生成服务。",
          "extraParams": {
            "voice": "moss_audio_ce44fc67-7ce3-11f0-8de5-96e35d26fb85",
            "outputFormat": "mp3",
            "sampleRate": 32000,
            "speed": 1,
            "volume": 1,
            "pitch": 0
          }
        }

        ```


        When no voice parameters are provided for MiniMax Speech, the server
        sends `voice`, `outputFormat=mp3`, `sampleRate=32000`, `speed=1`,
        `volume=1`, and `pitch=0` from the example above by default.


        Lyria 3 Pro uses `upstream_model=lyria-3-pro` (or
        `lyria-3-pro-preview`):


        ```json

        {
          "model": "suno_music",
          "upstream_model": "lyria-3-pro",
          "prompt": "Cinematic orchestral music with a hopeful finale."
        }

        ```


        ## Light Music or Instrumental Only


        You can use `light_music=true` or `make_instrumental=true`.
        `light_music` indicates a preference for light music/background music,
        and `make_instrumental` indicates that no sung vocals will be generated.


        ```json

        {
          "model": "suno_music",
          "upstream_model": "minimax-music-v2.6",
          "prompt": "Warm cafe background music with soft piano and strings, relaxing and cinematic.",
          "light_music": true,
          "make_instrumental": true
        }

        ```


        ## Advanced Lyrics Mode


        Suitable when the business side has already prepared the lyrics and
        needs to specify the title and style tags. `custom_mode=true` can be
        passed, and the lyrics field can use `lyrics`, `lyric`, `custom_lyrics`,
        or `customLyrics`.


        ```json

        {
          "model": "suno_music",
          "upstream_model": "mureka-v9",
          "custom_mode": true,
          "title": "Summer Sea Breeze",
          "tags": "electro pop, female vocal, bright summer",
          "lyrics": "[Verse]\nSea breeze moves across the white sand\n[Chorus]\nTurn the summer into a beam of light"
        }

        ```


        ## Query


        After creation succeeds, save the returned `data` task ID, such as
        `task_xxx`, and call `GET /suno/fetch/{task_id}` to query the status,
        audio URL, cover, title, lyrics, and the upstream raw fragment
        information.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - model
                - prompt
              properties:
                model:
                  type: string
                  example: suno_music
                  description: Always pass `suno_music`.
                  enum:
                    - suno_music
                upstream_model:
                  type: string
                  example: suno-v5.5
                  description: >-
                    Generation engine selection value; defaults to `suno-v5.5`,
                    explicitly pass `suno-v5` to keep the legacy version.
                music_model:
                  type: string
                  description: Compatibility alias for `upstream_model`.
                engine:
                  type: string
                  description: Compatibility alias for `upstream_model`.
                model_id:
                  oneOf:
                    - type: string
                    - type: integer
                  description: camelCase-compatible field for `model_id`.
                modelId:
                  oneOf:
                    - type: string
                    - type: integer
                  description: camelCase-compatible field for `model_id`.
                prompt:
                  type: string
                  description: >-
                    In prompt description mode, this is used for music style,
                    mood, and scene; in the advanced lyrics mode, it can be used
                    as a lyrics-compatible field.
                gpt_description_prompt:
                  type: string
                  description: Describes the compatibility field for prompt mode.
                extraParams:
                  type: object
                  description: >-
                    Voice parameters for MiniMax Speech 2.8 HD; a
                    snake_case-compatible field for `extraParams`.
                  properties:
                    voice:
                      type: string
                      default: moss_audio_ce44fc67-7ce3-11f0-8de5-96e35d26fb85
                    outputFormat:
                      type: string
                      default: mp3
                    sampleRate:
                      type: integer
                      default: 32000
                    speed:
                      type: number
                      default: 1
                    volume:
                      type: number
                      default: 1
                    pitch:
                      type: number
                      default: 0
                  additionalProperties: true
                extra_params:
                  type: object
                  description: >-
                    Voice parameters for MiniMax Speech 2.8 HD; a
                    snake_case-compatible field for `extraParams`.
                  properties:
                    voice:
                      type: string
                      default: moss_audio_ce44fc67-7ce3-11f0-8de5-96e35d26fb85
                    outputFormat:
                      type: string
                      default: mp3
                    sampleRate:
                      type: integer
                      default: 32000
                    speed:
                      type: number
                      default: 1
                    volume:
                      type: number
                      default: 1
                    pitch:
                      type: number
                      default: 0
                  additionalProperties: true
                voice:
                  type: string
                  description: MiniMax Speech 2.8 HD voice, can cover `extraParams.voice`.
                output_format:
                  type: string
                  description: MiniMax Speech 2.8 HD output format.
                outputFormat:
                  type: string
                  description: camelCase-compatible field for `output_format`.
                sample_rate:
                  type: integer
                  description: MiniMax Speech 2.8 HD sample rate.
                sampleRate:
                  type: integer
                  description: camelCase-compatible field for `sample_rate`.
                speed:
                  type: number
                  description: Speech rate, default 1.
                volume:
                  type: number
                  description: Volume, default 1.
                pitch:
                  type: number
                  description: Tone, default is 0.
                make_instrumental:
                  type: boolean
                  default: false
                  description: Whether to generate instrumental accompaniment only.
                light_music:
                  type: boolean
                  description: Whether to generate in a light music/background music style.
                pure_music:
                  type: boolean
                  description: Whether to generate in instrumental music mode.
                custom_mode:
                  type: boolean
                  description: Whether to use custom mode.
                customMode:
                  type: boolean
                  description: camelCase-compatible field for `custom_mode`.
                title:
                  type: string
                  description: Song title.
                tags:
                  type: string
                  description: Style tags, such as `electro pop, female vocal`.
                style:
                  type: string
                  description: Style-compatible field.
                genre:
                  type: string
                  description: Genre compatibility field.
                genres:
                  type: string
                  description: Genre compatibility field.
                lyrics:
                  type: string
                  description: Lyrics content.
                lyric:
                  type: string
                  description: '`lyrics` Compatible alias.'
                custom_lyrics:
                  type: string
                  description: '`lyrics` Compatible alias.'
                customLyrics:
                  type: string
                  description: '`lyrics` Compatible alias.'
            examples:
              music_submit_prompt:
                summary: Suno v5.5 Music Generation
                value:
                  model: suno_music
                  upstream_model: suno-v5.5
                  prompt: >-
                    Imitating "Billie Jean," create a DJ song with the theme of
                    "the artificial intelligence revolution."
                  make_instrumental: false
              music_submit_lyria:
                summary: Lyria 3 Pro music generation
                value:
                  model: suno_music
                  upstream_model: lyria-3-pro
                  prompt: Cinematic orchestral music with a hopeful finale.
              audio_submit_seed:
                summary: Seed Audio 1.0 Audio Generation
                value:
                  model: suno_music
                  upstream_model: seed-audio-1.0
                  prompt: 清晨海边的浪声与远处海鸥声。
              audio_submit_minimax_speech:
                summary: MiniMax Speech 2.8 HD
                value:
                  model: suno_music
                  upstream_model: minimax-speech-2.8-hd
                  prompt: 欢迎使用新版语音生成服务。
                  extraParams:
                    voice: moss_audio_ce44fc67-7ce3-11f0-8de5-96e35d26fb85
                    outputFormat: mp3
                    sampleRate: 32000
                    speed: 1
                    volume: 1
                    pitch: 0
              music_submit_light:
                summary: Light Music Generation
                value:
                  model: suno_music
                  upstream_model: minimax-music-v2.6
                  prompt: >-
                    Warm cafe background music with soft piano and strings,
                    relaxing and cinematic.
                  light_music: true
                  make_instrumental: true
              music_submit_lyrics:
                summary: Advanced Lyrics Mode
                value:
                  model: suno_music
                  upstream_model: mureka-v9
                  custom_mode: true
                  title: Summer Sea Breeze
                  tags: electro pop, female vocal, bright summer
                  lyrics: |-
                    [Verse]
                    Sea breeze moves across the white sand
                    [Chorus]
                    Turn the summer into a beam of light
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    example: success
                    description: On success, `success`.
                  message:
                    type: string
                    description: Error or warning message.
                  data:
                    type: object
                    description: Task ID, used for subsequent queries.
              examples:
                music_submit_success:
                  summary: Music generation submitted successfully
                  value:
                    code: success
                    message: ''
                    data: task_xxx
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: |-
        Use Bearer Token authentication.
        Format: `Authorization: Bearer sk-xxxxxx`

````