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

# Anleitung zur Anbindung der Suno-API für Songgenerierung

> Suno Music Generation API guide - Ace Data Cloud

Mit der zunehmenden Verbreitung von KI-Anwendungen haben sich verschiedene KI-Programme allmählich etabliert. KI ist nach und nach in alle Aspekte der Arbeits- und Lebenswelt der Menschen vorgedrungen. Auch die Branchen, die KI betreffen, werden immer vielfältiger – vom anfänglichen Schreiben über Medizin und Bildung bis hin zur heutigen Musik.

Suno ist eine professionelle und hochwertige Plattform für die Erstellung von KI-Songs und Musik. Nutzer müssen lediglich einfache Text-Prompts eingeben, um anhand von Genre-Stil und Songtexten Songs mit Gesang zu generieren. Dieser KI-Musikgenerator wurde von Teammitgliedern bekannter Technologieunternehmen wie Meta, TikTok und Kensho entwickelt und verfolgt das Ziel, dass jeder ohne Instrumente wunderbare Musik erschaffen kann.

Im Folgenden ist der Fortschritt der Modellaktualisierungen dargestellt:

| Version | model | Veröffentlichungszeit | lyric-Limit | style-Limit | Maximale Songdauer |
| - | - | - | - | - | - |
| v6 | chirp-v6 | 2026.09.09 | — | — | — |
| v6 Wild | chirp-v6-wild | 2026.09.09 | — | — | — |
| v6 Mini | chirp-v6-mini | 2026.09.09 | — | — | — |
| v5.5 | chirp-v5-5 | 2026.03.27 | 5000 | 1000 | 8 Minuten |
| v5 | chirp-v5 | 2025.09.23 | 5000 | 1000 | 8 Minuten |
| v4.5+ | chirp-v4-5-plus | 2025.07.17 | 5000 | 1000 | 8 Minuten |
| v4.5 | chirp-v4-5 | 2025.05.03 | 5000 | 1000 | 4 Minuten |
| v4 | chirp-v4 | 2024.12.17 | 3000 | 200 | 150 Sekunden |
| v3.5 | chirp-v3-5 | --- | 3000 | 200 | 120 Sekunden |

> Die `lyric`- und `style`-Limits in der obigen Tabelle sind die Obergrenzen im benutzerdefinierten Modus (`custom` ist `true`). Im nicht benutzerdefinierten Inspirationsmodus (`custom` ist `false`) wird nur `prompt` ausgefüllt, dessen Längenbegrenzung bei 500 Zeichen liegt (für alle Modelle identisch).

Suno unterstützt jetzt `chirp-v6`, `chirp-v6-wild` und `chirp-v6-mini`. Die Verwendung von `chirp-v6` wird empfohlen; alte Modellnamen bleiben weiterhin kompatibel.

Suno selbst stellt jedoch keine API bereit. AceDataCloud bietet eine Reihe von Suno-APIs, die die offizielle Suno-Anbindung simulieren und die gewünschte Musik bequem und schnell generieren können.

## Beantragung und Nutzung

Um die Suno Audios Generation API zu verwenden, rufen Sie zunächst die [Ace Data Cloud-Konsole](https://platform.acedata.cloud/console/applications) auf, um Ihren API-Token zu erhalten und ihn als Reserve aufzubewahren.

![](https://cdn.acedata.cloud/dvc3cg.jpg)

Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, um sich zu registrieren und anzumelden. Nach Abschluss kehren Sie automatisch zur aktuellen Seite zurück.

**Ein API-Token kann alle Dienste der Plattform aufrufen; es ist nicht erforderlich, für jeden Dienst separat einen Antrag zu stellen.** Bei der ersten Beantragung wird ein kostenloses Kontingent vergeben, das kostenlos getestet werden kann; bei unzureichendem Kontingent kann in der [Konsole](https://platform.acedata.cloud/console/coin) ein allgemeines Guthaben aufgeladen werden.

> 📘 Vollständige Dokumentation: [Suno Audios Generation API →](https://platform.acedata.cloud/documents/suno-audios)

## Grundlegende Nutzung

Welche Songs Sie auch immer möchten, Sie können beliebig einen Text eingeben. Wenn ich beispielsweise einen Song über Weihnachten generieren möchte, kann ich `a song for Christmas` eingeben, wie in der Abbildung gezeigt:

![](https://cdn.acedata.cloud/2kuuup.png)

Hier sehen wir, dass wir die Request Headers festgelegt haben, einschließlich:

* `accept`: Welches Format des Antwortergebnisses empfangen werden soll; hier wird `application/json` eingetragen, also das JSON-Format.
* `authorization`: Der Schlüssel zum Aufrufen der API, der nach der Beantragung direkt über ein Dropdown ausgewählt werden kann.

Außerdem wurde der Request Body festgelegt, einschließlich:

* `action`: Audio task type, default is `generate`. Supports operations such as generation, continuation, cover, concatenation, stem separation, adding audio tracks, extracting specified audio tracks, generating sound effects, and adjusting speed, all called through `POST /suno/audios`.
* `prompt`: Suno's official inspiration mode prompt (effective when `custom` is `false`), maximum 500 characters.
* `model`: The model for this music generation task. The v6 series includes `chirp-v6`, `chirp-v6-wild`, and `chirp-v6-mini`; old model names remain compatible.
* `max_mode`: Enhanced generation mode. `generate` is enabled only when both `custom` and `max_mode` are `true`, costing 1.12 Credits; `add_stem` can be enabled directly, costing 1.344 Credits. When disabled or omitted, they cost 0.56 and 0.672 Credits respectively.
* `variety`: Diversity intensity of generated results, options include `off`, `normal`, `high`, `extra`, and `max`. Only used for `generate` and `add_stem`; passing it for other actions returns 400.
* `lyric`: Lyrics content for Suno's official custom mode. `chirp-v3-5` and `chirp-v4` allow a maximum of 3000 characters; `chirp-v4-5` and above (including `chirp-v5` and `chirp-v5-5`) allow a maximum of 5000 characters.
* `custom`: Whether to use custom mode, default is: `false`.
* `instrumental`: The instrumental music option for Suno's official inspiration mode.
* `title`: Music title for Suno's official custom mode. `chirp-v3-5` and `chirp-v4` allow a maximum of 80 characters; `chirp-v4-5` and above allow a maximum of 100 characters.
* `style`: Music style for Suno's official custom mode. `chirp-v3-5` and `chirp-v4` allow a maximum of 200 characters; `chirp-v4-5` and above (including `chirp-v5` and `chirp-v5-5`) allow a maximum of 1000 characters.
* `negative_tags`: Music styles or genres to exclude from generated results in custom mode (when `custom` is `true`).
* `audio_weight`: Influence weight of audio or voice characteristics, ranging from 0 to 1, where `0` is also a valid value. It can be used for operations such as generation, continuation, cover, adding audio tracks, and voice consistency; without reference audio or voice characteristics, the model may weaken or ignore this value.
* `audio_id`: The ID of the reference music.
* `overpainting_start`/`overpainting_end`: The start and end times for adding vocals to existing instrumental music, in seconds.
* `underpainting_start`/`underpainting_end`: The start and end times for adding accompaniment to a cappella vocals, in seconds.
* `persona_id`: The song ID of the artist.
* `continue_at`: Continuation boundary, in seconds. For example, 213.5 means generating the subsequent segment starting at 3 minutes 33.5 seconds. `lyric` and `style` only guide new content after the boundary and will not replace lyrics or singing before the boundary in the source audio.
* `style_influence`: Style influence in custom mode, ranging from 0 to 1. A larger value usually matches the selected style more closely; `0` is passed as a valid value.
* `replace_section_end`: The final time of the replacement segment.
* `replace_section_start`: The start time of the replacement segment.
* `vocal_gender`: Controls female and male vocal preferences, with `f` for female vocals and `m` for male vocals, effective for models 4.5 and above; it is a preference option and strict adherence is not guaranteed.
* `weirdness`: Weirdness in custom mode, ranging from 0 to 1. A larger value is usually more creative and experimental; `0` is passed as a valid value.
* `duration`: Desired song duration, in seconds, must be an integer, ranging from 10 to 360. This parameter is used for song generation in custom mode (when `custom` is `true`). It is an inclination hint rather than a hard constraint: the model will refer to it but does not guarantee reaching it. The actual finished duration is subject to the `duration` field in the response and is usually shorter than the desired value.

### Scope of Advanced Parameters

| Parameter | Value | Supported action | Description |
| - | - | - | - |
| `weirdness` | 0-1 | Optional | Adjusts experimental nature; `0` is a valid value; effects depend on the operation, mode, and model |
| `style_influence` | 0-1 | Optional | Adjusts style-following tendency; `0` is a valid value; effects depend on the operation, mode, and model |
| `audio_weight` | 0-1 | Optional | Adjusts the influence of audio or voice characteristics; may be ignored by the model without reference information |
| `variety` | `off` / `normal` / `high` / `extra` / `max` | `generate`, `add_stem` | Adjusts style diversity between results |
| `max_mode` | boolean | `generate` (requires `custom=true`), `add_stem` | Enhances consistency and is billed according to enhanced mode |
| `vocal_gender` | `f` / `m` | Generation operations supporting vocal control | Preference option; strict adherence is not guaranteed |
| `duration` | Integer 10-360 | Optional | Desired duration; specific operations, modes, or models may ignore it |

The platform validates parameter types and value ranges, but will not reject these optional adjustment options solely because the action is different; specific effects are determined by the operation, mode, and model.

* `lyric_prompt`: Prompt for generating lyrics, effective if and only if `custom` is `true` and `lyric` has not been passed.
* `callback_url`: URL that needs result callbacks.
* `async`: Optional. When set to `true`, the API immediately returns `task_id`; there is no need to provide `callback_url`, and the result can subsequently be obtained by polling through the corresponding task query API.

The generated code is as follows:

![](https://cdn.acedata.cloud/1xehwl.png)

You can click the "Try" button to test the API directly. Wait 1–2 minutes, and the result is as follows:

```json theme={null}
{
  "success": true,
  "task_id": "e72fb249-bd5b-4e2a-b20c-8a06fea5ac14",
  "trace_id": "7dbc5b6a-b2c0-4d85-9d39-fa8a8a785ccf",
  "data": [
    {
      "id": "b481b17a-bf50-4e10-8adc-4d5635050893",
      "title": "Under the Mistletoe",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-001",
      "lyric": "[Verse]\nSnowflakes falling on the ground\nTwinkling lights all around\nThe scent of pine fills the air\nChristmas magic everywhere\n[Chorus]\nUnder the mistletoe tonight\nHearts aglow in the soft moonlight\nLaughter echoes\nSpirits bright\nIt’s Christmas time\nIt feels so right\n[Verse 2]\nStockings hung by the fire’s glow\nWarmth inside while the cold winds blow\nCookies baking\nSweet delight\nA season of joy shining bright\n[Chorus]\nUnder the mistletoe tonight\nHearts aglow in the soft moonlight\nLaughter echoes\nSpirits bright\nIt’s Christmas time\nIt feels so right\n[Bridge]\nCarols sung by candlelight\nStars above make the world feel tight\nPeace and love\nA season’s creed\nFilling hearts with all we need\n[Chorus]\nUnder the mistletoe tonight\nHearts aglow in the soft moonlight\nLaughter echoes\nSpirits bright\nIt’s Christmas time\nIt feels so right",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-17T15:59:32.468Z",
      "model": "chirp-auk",
      "state": "succeeded",
      "prompt": "A song for Christmas",
      "style": "holiday, cheerful, male vocals",
      "duration": 154.92
    },
    {
      "id": "fbf22dab-5e2b-4e02-84c0-6d7605f14c3d",
      "title": "Under the Mistletoe",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-002",
      "lyric": "[Verse]\nSnowflakes falling on the ground\nTwinkling lights all around\nThe scent of pine fills the air\nChristmas magic everywhere\n[Chorus]\nUnder the mistletoe tonight\nHearts aglow in the soft moonlight\nLaughter echoes\nSpirits bright\nIt’s Christmas time\nIt feels so right\n[Verse 2]\nStockings hung by the fire’s glow\nWarmth inside while the cold winds blow\nCookies baking\nSweet delight\nA season of joy shining bright\n[Chorus]\nUnder the mistletoe tonight\nHearts aglow in the soft moonlight\nLaughter echoes\nSpirits bright\nIt’s Christmas time\nIt feels so right\n[Bridge]\nCarols sung by candlelight\nStars above make the world feel tight\nPeace and love\nA season’s creed\nFilling hearts with all we need\n[Chorus]\nUnder the mistletoe tonight\nHearts aglow in the soft moonlight\nLaughter echoes\nSpirits bright\nIt’s Christmas time\nIt feels so right",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-17T15:59:32.468Z",
      "model": "chirp-auk",
      "state": "succeeded",
      "prompt": "A song for Christmas",
      "style": "holiday, cheerful, male vocals",
      "duration": 158.48
    }
  ]
}
```

Man kann sehen, dass wir zu diesem Zeitpunkt die Inhalte von zwei Songs erhalten haben, einschließlich Titel, Vorschaubild, Liedtext, Audio, Video und anderer Inhalte.

Die Feldbeschreibungen lauten wie folgt:

* success：Ob die Generierung erfolgreich war; bei Erfolg ist der Wert `true`, andernfalls `false`
* data：Ist eine Liste, die detaillierte Informationen zu den generierten Songs enthält.
  * state：Der Generierungsstatus des Songs umfasst hauptsächlich vier Arten, im Einzelnen wie folgt:
    * succeeded：Generierung erfolgreich
    * pending：In der Warteschlange
    * running：Wird ausgeführt
    * error：Fehlgeschlagen
  * id：Song-ID
  * title：Der Titel des Songs
  * image\_url：Das Coverbild des Songs
  * lyric：Der Liedtext des Songs
  * audio\_url：Die endgültige Audioadresse des Songs. Die Plattform gibt bevorzugt die Ace Data Cloud CDN-Adresse zurück; falls die Persistenz fehlschlägt, kann die ursprüngliche Medienadresse zurückgegeben werden. Bitte laden Sie sie rechtzeitig herunter.
  * video\_url：Die Videodatei des Songs; beim Öffnen handelt es sich um ein mp4-Video.
  * created\_at：Die Erstellungszeit
  * model：Das verwendete Modell, in der Regel das neueste v3-Modell
  * style：Der Stil

## Benutzerdefinierte Generierung

Wenn Sie Liedtexte benutzerdefiniert generieren möchten, können Sie Liedtexte eingeben:

Zu diesem Zeitpunkt kann das Feld `lyric` Inhalte wie die folgenden übergeben:

```
[Verse]\nSnowflakes falling all around\nGlistening white\nCovering the ground\nChildren laughing\nFull of delight\nIn this winter wonderland tonight\nSanta's sleigh\nUp in the sky\nRudolph's nose shining bright\nOh my\nHear the jingle bells\nRinging so clear\nBringing joy and holiday cheer\n[Verse 2]\nRoasting chestnuts by the fire's glow\nChristmas lights\nThey twinkle and show\nFamilies gathering with love and cheer\nSpreading warmth to everyone near
```

> Hinweis: Das `\n` im Liedtext steht hier für einen Zeilenumbruch. Wenn Sie nicht wissen, wie Sie Liedtexte generieren, können Sie die von AceDataCloud bereitgestellte API zur Liedtextgenerierung verwenden, um Liedtexte über einen Prompt zu generieren. Die API ist [Suno Lyrics Generation API](https://platform.acedata.cloud/documents/suno-lyrics).

Als Nächstes müssen wir Songs anhand von Liedtext, Titel und Stil benutzerdefiniert generieren und können die folgenden Inhalte angeben:

* lyric：Liedtext
* custom：Auf `true` setzen, steht für benutzerdefinierte Generierung; dieser Parameter ist standardmäßig false und steht für die Generierung mit `prompt`.
* title：Der Titel des Songs.
* style：Der Stil des Songs, optional.

Das Ausfüllbeispiel lautet wie folgt:

![](https://cdn.acedata.cloud/qp3iba.png)

Nach dem Ausfüllen wird der folgende Code automatisch generiert:

![](https://cdn.acedata.cloud/o5haei.png)

Der entsprechende Code:

```shell theme={null}
curl -X POST 'https://api.acedata.cloud/suno/audios' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "action": "generate",
  "prompt": "A song for Christmas",
  "model": "chirp-v4-5",
  "lyric": "[Verse]\\nSnowflakes falling all around\\nGlistening white\\nCovering the ground\\nChildren laughing\\nFull of delight\\nIn this winter wonderland tonight\\nSanta's sleigh\\nUp in the sky\\nRudolph's nose shining bright\\nOh my\\nHear the jingle bells\\nRinging so clear\\nBringing joy and holiday cheer\\n[Verse 2]\\nRoasting chestnuts by the fire's glow\\nChristmas lights\\nThey twinkle and show\\nFamilies gathering with love and cheer\\nSpreading warmth to everyone near",
  "custom": true
}'
```

Der Test ist zulässig, und der Generierungseffekt ist ähnlich.

## Benutzerdefinierte Generierungsfunktion für Sängerstil

Wenn Sie den Stil eines Sängers verwenden möchten, um ein Lied zu generieren, generieren Sie zunächst über die grundlegende Verwendung oben ein Lied.\
Am Ende müssen Sie dieses Lied als Sängerstil festlegen. Anschließend müssen Sie die [Suno Persona API](https://platform.acedata.cloud/documents/suno-persona) aufrufen, um anhand der offiziell generierten Musik-ID `audio_id` einen ID-Parameter `persona_id` für einen Sängerstil zu generieren. Die spezifischen Parameter sind in der folgenden Abbildung dargestellt:

![](https://cdn.acedata.cloud/pmzo3l.png)

Nach dem Ausfüllen wird der folgende Code automatisch generiert:

![](https://cdn.acedata.cloud/a5g0nj.png)

Der entsprechende Python-Code:

```python theme={null}
import requests

url = "https://api.acedata.cloud/suno/persona"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "audio_id": "97efc9f4-0e8d-4b3e-88df-14568fa1b11f",
    "name": "test"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

Klicken Sie auf Ausführen, dann erhalten Sie ein Ergebnis wie folgt:

```json theme={null}
{
  "success": true,
  "task_id": "7628b754-4fe7-4e79-bda4-806d0dd8bf6e",
  "data": {
    "persona_id": "e0d7319e-aa2a-44cb-b00a-916218d7cb0b"
  }
}
```

Wir verwenden die obige `audio_id` und `persona_id`, nämlich `97efc9f4-0e8d-4b3e-88df-14568fa1b11f` bzw. `e0d7319e-aa2a-44cb-b00a-916218d7cb0b`, als Beispieldaten für diesen Vorgang. Anschließend können Sie den Parameter `action` auf `artist_consistency` setzen (wenn es sich um den neuen Sängerstil Persona-v2-vox handelt, muss `action` auf `artist_consistency_vox` gesetzt werden) und die ID des Liedes, dessen Generierung fortgesetzt werden soll, sowie die Sängerstil-ID eingeben. Ein Ausfüllbeispiel ist wie folgt:

![](https://cdn.acedata.cloud/fukijq.png)

Nach dem Ausfüllen wird der folgende Code automatisch generiert:

![](https://cdn.acedata.cloud/5uzk9d.png)

Der entsprechende Python-Code:

```python theme={null}
import requests

url = "https://api.acedata.cloud/suno/audios"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "action": "artist_consistency",
    "prompt": "A song for Christmas",
    "model": "chirp-v4-5",
    "persona_id": "e0d7319e-aa2a-44cb-b00a-916218d7cb0b",
    "audio_id": "97efc9f4-0e8d-4b3e-88df-14568fa1b11f"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

Klicken Sie auf Ausführen, dann erhalten Sie ein Ergebnis wie folgt:

```json theme={null}
{
  "success": true,
  "task_id": "9b732b1a-bd67-48bc-95e4-90140e06836f",
  "trace_id": "30fcd88e-7687-4137-92d7-913b58115204",
  "data": [
    {
      "id": "727a36e2-8dce-4df7-99e5-14e44635c80f",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-003",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-17T16:27:33.979Z",
      "model": "chirp-auk",
      "state": "succeeded",
      "style": "",
      "duration": 244.4
    },
    {
      "id": "3b33301a-b17e-4b25-8842-09b46dab1a36",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-004",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-17T16:27:33.979Z",
      "model": "chirp-auk",
      "state": "succeeded",
      "style": "",
      "duration": 229.88
    }
  ]
}
```

Es ist zu erkennen, dass der Ergebnisinhalt mit dem obigen übereinstimmt. Damit wird die Funktion realisiert, Lieder unter Verwendung eines Sängerstils zu generieren.

## Funktion zum Fortsetzen der Generierung

Wenn Sie ein bereits generiertes Suno-Lied weiter generieren möchten, können Sie den Parameter `action` auf `extend` setzen und die ID des Liedes eingeben, dessen Generierung fortgesetzt werden soll. Die Lied-ID wird gemäß der grundlegenden Verwendung abgerufen. Wie oben zu sehen ist, lautet die Lied-ID zu diesem Zeitpunkt:

```
"id": "97efc9f4-0e8d-4b3e-88df-14568fa1b11f"
```

> Hinweis: Die `id` in den Liedtexten hier ist die ID des nach der Generierung erstellten Liedes. Wenn Sie nicht wissen, wie man Lieder generiert, können Sie sich auf die grundlegende Verwendung oben beziehen, um ein Lied zu generieren.

Wenn Sie ein von Ihnen selbst hochgeladenes Lied weiter generieren möchten, können Sie den Parameter `action` auf `upload_extend` setzen und die ID des benutzerdefiniert hochgeladenen Liedes eingeben, dessen Generierung fortgesetzt werden soll. Die Lied-ID wird über die [Suno Upload Generation API](https://platform.acedata.cloud/documents/suno-upload) abgerufen, wie in der folgenden Abbildung dargestellt:

![](https://cdn.acedata.cloud/a0mn5e.png)

Als Nächstes müssen die Liedtexte des fortzusetzenden Abschnitts ausgefüllt werden, und es kann ein Stil angegeben werden:

* lyric：Wird nur verwendet, um die Liedtexte des neu generierten Abschnitts nach `continue_at` anzuleiten, und ersetzt nicht die Liedtexte im Quellaudio vor diesem Zeitpunkt.
* custom：Wenn auf `true` gesetzt, bedeutet dies benutzerdefinierte Generierung. Dieser Parameter ist standardmäßig false und bedeutet Generierung mit `prompt`.
* style：Der Liedstil des fortzusetzenden Abschnitts, optional.
* continue\_at：Grenze für die Fortsetzung, in Sekunden. Beispielsweise bedeutet 213.5, dass der nachfolgende Abschnitt ab 3 Minuten und 33,5 Sekunden generiert wird.

> `extend` wird verwendet, um ein vorhandenes Lied nach hinten weiterzuschreiben, nicht um den Text eines ganzen Liedes zu ändern. Wenn Sie für das gesamte Lied von Anfang an neue Liedtexte verwenden möchten, verwenden Sie bitte `generate`, um es erneut zu generieren; wenn Sie ein vorhandenes Lied als Referenz neu interpretieren möchten, können Sie `cover` verwenden. Wenn ein vollständiger neuer Liedtext übergeben wird, werden die ursprünglichen Liedtexte vor `continue_at` weiterhin nicht ersetzt.

Ein Ausfüllbeispiel ist wie folgt:

![](https://cdn.acedata.cloud/zp9s42.png)

Nach dem Ausfüllen wird der folgende Code automatisch generiert:

![](https://cdn.acedata.cloud/wwpw78.png)

Im Folgenden ist ein echter historischer Aufruf-Snapshot erhalten, bei dem `continue_at` 2 Sekunden beträgt, daher gehören nur die ersten 2 Sekunden zum ursprünglichen Inhalt vor der Fortsetzungsgrenze. Wenn die Fortsetzung tatsächlich nahe dem Ende des Songs erfolgt, sollte dieser Wert auf die erwartete Sekunde eingestellt werden, an der die Fortsetzung beginnen soll, und in `lyric` sollte nur der neue Abschnitt bereitgestellt werden, der nach der Grenze gesungen werden soll.

Der entsprechende Python-Code:

```python theme={null}
import requests

url = "https://api.acedata.cloud/suno/audios"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "action": "extend",
    "prompt": "A song for Christmas",
    "model": "chirp-v4-5",
    "audio_id": "97efc9f4-0e8d-4b3e-88df-14568fa1b11f",
    "continue_at": 2,
    "lyric": "[Verse]\\nSnowflakes falling all around\\nGlistening white\\nCovering the ground\\nChildren laughing\\nFull of delight\\nIn this winter wonderland tonight\\nSanta's sleigh\\nUp in the sky\\nRudolph's nose shining bright\\nOh my\\nHear the jingle bells\\nRinging so clear\\nBringing joy and holiday cheer\\n[Verse 2]\\nRoasting chestnuts by the fire's glow\\nChristmas lights\\nThey twinkle and show\\nFamilies gathering with love and cheer\\nSpreading warmth to everyone near",
    "custom": True,
    "instrumental": False
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

Beim Klicken auf Ausführen kann festgestellt werden, dass ein Ergebnis wie das folgende erhalten wird:

```json theme={null}
{
  "success": true,
  "task_id": "75b835d9-30d1-4641-8524-0aeedbdc9e1a",
  "trace_id": "44c41045-a2e1-4d19-aafc-7abd239d0d5c",
  "data": [
    {
      "id": "0a1e1b10-c36a-41c9-9bfb-b26d9d25db98",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-005",
      "lyric": "[Verse]\\nSnowflakes falling all around\\nGlistening white\\nCovering the ground\\nChildren laughing\\nFull of delight\\nIn this winter wonderland tonight\\nSanta's sleigh\\nUp in the sky\\nRudolph's nose shining bright\\nOh my\\nHear the jingle bells\\nRinging so clear\\nBringing joy and holiday cheer\\n[Verse 2]\\nRoasting chestnuts by the fire's glow\\nChristmas lights\\nThey twinkle and show\\nFamilies gathering with love and cheer\\nSpreading warmth to everyone near",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-17T16:38:35.509Z",
      "model": "chirp-auk",
      "state": "succeeded",
      "style": "",
      "duration": 165.92
    },
    {
      "id": "4334c5b4-0a44-4b26-a8f6-66cc4dbb8fc3",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-006",
      "lyric": "[Verse]\\nSnowflakes falling all around\\nGlistening white\\nCovering the ground\\nChildren laughing\\nFull of delight\\nIn this winter wonderland tonight\\nSanta's sleigh\\nUp in the sky\\nRudolph's nose shining bright\\nOh my\\nHear the jingle bells\\nRinging so clear\\nBringing joy and holiday cheer\\n[Verse 2]\\nRoasting chestnuts by the fire's glow\\nChristmas lights\\nThey twinkle and show\\nFamilies gathering with love and cheer\\nSpreading warmth to everyone near",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-17T16:38:35.509Z",
      "model": "chirp-auk",
      "state": "succeeded",
      "style": "",
      "duration": 158.84
    }
  ]
}
```

Es ist erkennbar, dass `lyric` im Ergebnis den Liedtext zurückgibt, der für diese Fortsetzungsaufgabe verwendet wurde. Dieses Feld ist keine wortgetreue Transkription des vollständigen fertigen Audios; bei `extend` verwendet das Quellaudio vor `continue_at` weiterhin den ursprünglichen Liedtext, und der neue Liedtext wird nur zur Steuerung des fortgesetzten Abschnitts verwendet.

## Vollständigen Song abrufen

Die `extend`-Ergebnisse des aktuellen Modells enthalten in der Regel bereits das Quellaudio vor `continue_at` und die neuen Inhalte nach der Grenze. Bitte beurteilen Sie zunächst anhand der tatsächlichen Dauer und des Inhalts des zurückgegebenen Audios, ob es bereits ein vollständiger Song ist. Wenn ein eigenständiges Fortsetzungssegment zurückgegeben wird oder mehrere Fortsetzungshistorien ausdrücklich zu einem Song zusammengeführt werden müssen, verwenden Sie anschließend die Verkettungsfunktion:

* action: Der Inhalt ist `concat`.
* audio\_id: Die ID des letzten Fortsetzungssegments.

Wenn beispielsweise die ID des erweiterten Songs 0a1e1b10-c36a-41c9-9bfb-b26d9d25db98 lautet, können die Parameter wie folgt festgelegt werden:

```json theme={null}
{
  "action": "concat",
  "audio_id": "0a1e1b10-c36a-41c9-9bfb-b26d9d25db98"
}
```

Die anderen Parameter bleiben unverändert. Zurückgegeben wird ein vollständiger Song, also das Verkettungsergebnis aller Songsegmente, jedoch enthält das Ergebnis nur einen Song, wie im folgenden Beispiel:

```json theme={null}
{
  "success": true,
  "task_id": "0f794915-8418-4124-93f5-b7eb3a417167",
  "trace_id": "62afcce0-e7e5-44b8-8c2e-4bba12a4f414",
  "data": [
    {
      "id": "0efec7e0-11bf-4313-9981-2c0e7218d7dd",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-007",
      "lyric": "[Verse]\\nSnowflakes falling all around\\nGlistening white\\nCovering the ground\\nChildren laughing\\nFull of delight\\nIn this winter wonderland tonight\\nSanta's sleigh\\nUp in the sky\\nRudolph's nose shining bright\\nOh my\\nHear the jingle bells\\nRinging so clear\\nBringing joy and holiday cheer\\n[Verse 2]\\nRoasting chestnuts by the fire's glow\\nChristmas lights\\nThey twinkle and show\\nFamilies gathering with love and cheer\\nSpreading warmth to everyone near\n[Verse]\\nSnowflakes falling all around\\nGlistening white\\nCovering the ground\\nChildren laughing\\nFull of delight\\nIn this winter wonderland tonight\\nSanta's sleigh\\nUp in the sky\\nRudolph's nose shining bright\\nOh my\\nHear the jingle bells\\nRinging so clear\\nBringing joy and holiday cheer\\n[Verse 2]\\nRoasting chestnuts by the fire's glow\\nChristmas lights\\nThey twinkle and show\\nFamilies gathering with love and cheer\\nSpreading warmth to everyone near",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-17T16:43:06.718Z",
      "model": "chirp-auk",
      "state": "succeeded",
      "style": "",
      "duration": 167.91997916666668,
      "concat_history": [
        {
          "continue_at": 2,
          "id": "97efc9f4-0e8d-4b3e-88df-14568fa1b11f",
          "infill": false,
          "source": "web",
          "type": "gen"
        },
        {
          "id": "0a1e1b10-c36a-41c9-9bfb-b26d9d25db98"
        }
      ]
    }
  ]
}
```

## Musik-Coverversion

Wenn nach dem Fortsetzen der Songgenerierung auf Basis des ursprünglichen Songs der Stil des zurückgegebenen Songs möglicherweise nicht sehr passend ist. Wenn eine Coverversion des zuvor generierten Songs (wenn es sich um benutzerdefiniert hochgeladene Musik handelt, wird dies ebenfalls unterstützt) erstellt werden soll, muss die Methode für Musik-Coverversionen verwendet werden, dann können die folgenden Inhalte angegeben werden:

* action: Der Inhalt ist `cover`, wenn eine Coverversion für benutzerdefiniert hochgeladene Musik erstellt wird, muss der Inhalt als `upload_cover` angegeben werden.
* audio\_id: Die ID des zuvor generierten Songs.

Wenn zum Beispiel die ID des ursprünglich generierten Songs lautet: 0a1e1b10-c36a-41c9-9bfb-b26d9d25db98, dann können die Parameter wie folgt festgelegt werden:

```json theme={null}
{
  "action": "cover",
  "audio_id": "0a1e1b10-c36a-41c9-9bfb-b26d9d25db98",
  "prompt": "A song for Christmas",
  "model": "chirp-v4-5"
}
```

Die anderen Parameter bleiben unverändert, und zurückgegeben wird ein Song nach der Coverversion, also das Ergebnis der Coverversion des ursprünglich generierten Songs, das Beispiel lautet wie folgt:

```json theme={null}
{
  "success": true,
  "task_id": "b9d43d06-2e0a-4b5e-9e0d-7dfab32e00ab",
  "trace_id": "6c5e567d-0fdc-4c44-9b36-4090d9a75ff5",
  "data": [
    {
      "id": "6988fa57-f810-41cf-afab-7838db2c77dc",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-008",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-17T16:44:13.007Z",
      "model": "chirp-auk",
      "state": "succeeded",
      "style": "",
      "duration": 182.4
    },
    {
      "id": "ce98b991-0258-4f05-8245-e43d4efa8fb8",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-009",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-17T16:44:13.007Z",
      "model": "chirp-auk",
      "state": "succeeded",
      "style": "",
      "duration": 179.72
    }
  ]
}
```

Das generierte Ergebnis ähnelt dem obigen, damit ist der Prozess der Generierung einer Coverversion des ursprünglich generierten Songs abgeschlossen.

## Abschnitt ersetzen

Wenn nach der Songgenerierung eine zweite kreative Bearbeitung erforderlich ist, bei der ein Songabschnitt separat ersetzt wird, kann ein bestimmter Abschnitt des Songs ersetzt werden.

> ⚠️ **Hinweis**: `replace_section_result_mode` ist standardmäßig `full_song`: Das System fügt jeweils 2 neu generierte Kandidaten zusammen und gibt 2 vollständige Songs zurück. Wenn nur die noch nicht zusammengefügten Ersatzabschnitt-Kandidaten benötigt werden, setzen Sie ihn ausdrücklich auf `candidates` und wählen dann einen Kandidaten aus, um [Musik zusammenfügen](#音乐拼接) aufzurufen.

Die Parameterbeschreibung lautet wie folgt:

* action: Der Inhalt ist `replace_section`.
* audio\_id: Die ID des ursprünglichen Songs (des zu ersetzenden Quellsongs).
* model: Songgenerierungsmodell.
* lyric: Der vollständige Liedtext nach dem Ersetzen (einschließlich des ersetzten Abschnitts und seines Kontexts, im Einklang mit dem Inhalt in `prompt`).
* prompt: Der neue Liedtext für den Abschnitt, der ersetzt werden soll.
* style: Der Stil des Songs, optional.
* replace\_section\_start: Die Startzeit des zu ersetzenden Abschnitts im Originalsong (Sekunden).
* replace\_section\_end: Die Endzeit des zu ersetzenden Abschnitts im Originalsong (Sekunden).
* replace\_section\_result\_mode: Rückgabemodus, standardmäßig `full_song`. `full_song` fügt jeweils 2 Kandidaten zusammen und gibt 2 vollständige Songs zurück; `candidates` gibt 2 noch nicht zusammengefügte Kandidatenabschnitte zurück.

### Schritt eins: Aufgabe zum Ersetzen eines Abschnitts starten

Wenn zum Beispiel die ID des ursprünglich generierten Songs lautet: 18db7ed0-2b8a-41db-91c1-b0781dcca0d4 (Dauer 94,12 Sekunden), und der Refrain von Sekunde 30 bis Sekunde 60 durch einen neuen Liedtext ersetzt werden soll, dann können die Parameter wie folgt festgelegt werden:

```json theme={null}
{
  "action": "replace_section",
  "audio_id": "18db7ed0-2b8a-41db-91c1-b0781dcca0d4",
  "model": "chirp-v5-5",
  "custom": false,
  "instrumental": false,
  "lyric": "[Intro]\n锣鼓喧天 红灯高挂\n[Verse 1]\n爆竹声声辞旧岁\n春风暖暖入万家\n红包压岁笑开颜\n金蛇起舞贺新春\n[Chorus]\n梅花绽放春意洋溢满地\n梅花绽放春意洋溢满地\n梅花绽放春意洋溢满地\n梅花绽放春意洋溢满地\n[Verse 2]\n饺子飘香年夜饭\n灯笼摇曳照团圆",
  "prompt": "梅花绽放春意洋溢满地\n梅花绽放春意洋溢满地\n梅花绽放春意洋溢满地\n梅花绽放春意洋溢满地",
  "replace_section_start": 30.0,
  "replace_section_end": 60.0,
  "replace_section_result_mode": "full_song"
}
```

Standardmäßig werden 2 vollständige Songs zurückgegeben, die jeweils aus zwei Kandidaten zusammengesetzt wurden. Wenn `replace_section_result_mode` auf `candidates` gesetzt wird, werden 2 noch nicht zusammengesetzte Ersatzabschnitte zurückgegeben; die Struktur entspricht dem folgenden Beispiel:

```json theme={null}
{
  "success": true,
  "task_id": "dd067075-a295-4160-8375-d5504327d55b",
  "trace_id": "c34f589b-9195-4d0b-af78-9c890e77609c",
  "data": [
    {
      "id": "364f9d8b-ca25-463b-9a5e-d0b7139e2d6a",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-010",
      "image_large_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-011",
      "lyric": "[Intro]\n锣鼓喧天 红灯高挂\n[Verse 1]\n爆竹声声辞旧岁\n春风暖暖入万家\n红包压岁笑开颜\n金蛇起舞贺新春\n[Chorus]\n梅花绽放春意洋溢满地\n梅花绽放春意洋溢满地\n梅花绽放春意洋溢满地\n梅花绽放春意洋溢满地\n[Verse 2]\n饺子飘香年夜饭\n灯笼摇曳照团圆",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2026-05-06T06:55:00.000Z",
      "model": "chirp-v5-5",
      "state": "succeeded",
      "style": "",
      "duration": 45.16
    },
    {
      "id": "fae966ea-5f7f-4e80-9962-1c57963c7f8a",
      "title": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "model": "chirp-v5-5",
      "state": "succeeded",
      "duration": 33.8
    }
  ]
}
```

Im Modus `candidates` sind die Längen der zwei zurückgegebenen Audiodateien (45,16 Sekunden, 33,8 Sekunden) deutlich kürzer als der Originalsong (94,12 Sekunden). Sie sind Ersatzabschnitte mit wenig Kontext und **nicht** der vollständige Song. Zufriedenstellende Kandidaten können ausgewählt und anschließend manuell zusammengesetzt werden. Der Standardmodus `full_song` führt dagegen zwei Zusammensetzungen durch und gibt direkt 2 vollständige Songs zurück.

### Vollständige Songs direkt zurückgeben

Wenn vollständige Songs direkt erhalten werden sollen, kann in Schritt eins `replace_section_result_mode` auf `full_song` gesetzt werden. Die Schnittstelle setzt die beiden Kandidaten jeweils zusammen und gibt 2 vollständige Songs zurück; in diesem Fall muss `concat` nicht erneut aufgerufen werden.

### Schritt zwei: Den Ersatzabschnitt wieder mit dem Originalsong zusammensetzen

Für den oben ausgewählten Abschnitt (zum Beispiel `364f9d8b-ca25-463b-9a5e-d0b7139e2d6a`) wird gemäß der Methode im Abschnitt [Musikzusammensetzung](#音乐拼接) eine `concat`-Aufgabe gestartet:

```json theme={null}
{
  "action": "concat",
  "audio_id": "364f9d8b-ca25-463b-9a5e-d0b7139e2d6a",
  "model": "chirp-v5-5"
}
```

Zurückgegeben wird der zusammengesetzte vollständige Song, wie im folgenden Beispiel:

```json theme={null}
{
  "success": true,
  "task_id": "5dbd4a78-0197-4ef3-9c16-8bddaf4f0c94",
  "trace_id": "580bd1da-2ad3-4d75-be1f-6c14bd4b489d",
  "data": [
    {
      "id": "365a9640-0452-4567-80f0-4f5a2a17ddd5",
      "title": "新年快乐",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-012",
      "lyric": "[Intro]\n锣鼓喧天 红灯高挂\n[Verse 1]\n爆竹声声辞旧岁\n春风暖暖入万家\n红包压岁笑开颜\n金蛇起舞贺新春\n[Chorus]\n梅花绽放春意洋溢满地\n梅花绽放春意洋溢满地\n梅花绽放春意洋溢满地\n梅花绽放春意洋溢满地\n[Verse 2]\n饺子飘香年夜饭\n灯笼摇曳照团圆",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2026-05-06T06:56:46.057Z",
      "model": "chirp-v5-5",
      "state": "succeeded",
      "style": "traditional Chinese new year, festive, female vocals, upbeat",
      "duration": 105.28
    }
  ]
}
```

Zu diesem Zeitpunkt wurde `duration` auf die vollständige Songlänge wiederhergestellt (105,28 Sekunden, ungefähr gleich der Länge des Originalsongs), und `audio_url` verweist auf den vollständigen Song nach dem Ersetzen. Damit ist der Prozess der sekundären Erstellung „Generieren → Segment ersetzen → gesamten Song zusammenfügen“ abgeschlossen.

## Trennung von Gesang und Musik

Wenn nach dem Generieren eines Songs eine sekundäre Erstellung erforderlich ist, bei der Begleitung und Gesang separat bearbeitet werden müssen, können reine Instrumentalbegleitung und A-cappella-Gesang getrennt werden. Dazu können die folgenden Inhalte angegeben werden:

* action: Der Inhalt ist `stems`.
* audio\_id: Die ID des zuvor generierten Songs.

Wenn die ID des zuvor generierten Songs beispielsweise ec13e502-d043-4eb2-92ee-e900c6da69d1 lautet, können die Parameter wie folgt festgelegt werden:

```json theme={null}
{
  "action": "stems",
  "audio_id": "ec13e502-d043-4eb2-92ee-e900c6da69d1"
}
```

Mit den obigen Parametern kann das Ergebnis der Trennung von Gesang und Musik erhalten werden, das Ergebnis lautet wie folgt:

```json theme={null}
{
  "success": true,
  "task_id": "4050affc-f8a6-4cba-a86c-bf201eed053d",
  "trace_id": "5107ee58-687d-422f-9195-fa0e82e1fcc8",
  "data": [
    {
      "id": "e3de0928-085a-42c4-b982-3b24738d1989",
      "title": "Deck the Sky - Vocals",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-013",
      "lyric": "[Verse]\nSnowflakes dance on rooftops high\nChildren's laughter fills the sky\nCarols ring from church bells loud\nHolidays a joyful crowd\n[Verse 2]\nCandy canes and cocoa warm\nWrapped up tight in our own storm\nStockings hung with dreams and cheer\nMagic growing every year\n[Chorus]\nDeck the sky with twinkling stars\nHoliday joy feels ours and ours\nSing the songs of love and light\nChristmas glows so pure and bright\n[Verse 3]\nFireside tales of long ago\nReindeer prance in icy glow\nEvergreen and tinsel’s gleam\nChristmas time a lovely dream\n[Bridge]\nHearts are full with friends and kin\nMistletoe for love to win\nGifts of love and hope we share\nChristmas spirit everywhere\n[Chorus]\nDeck the sky with twinkling stars\nHoliday joy feels ours and ours\nSing the songs of love and light\nChristmas glows so pure and bright",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "https://cdn.acedata.cloud/assets/examples/gemini/04a043bd-6b23-4b4e-945c-ce48158c3eee-3a89912507c7.mp4?example=video-001",
      "created_at": "2025-01-05T07:49:16.881Z",
      "model": "",
      "state": "succeeded",
      "style": "holiday, jolly",
      "duration": 174.16
    },
    {
      "id": "ad5d7c89-709c-4eb4-a5a6-72f9f5e57fdb",
      "title": "Deck the Sky - Instrumental",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-014",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "https://cdn.acedata.cloud/assets/examples/gemini/04a043bd-6b23-4b4e-945c-ce48158c3eee-3a89912507c7.mp4?example=video-002",
      "created_at": "2025-01-05T07:49:16.892Z",
      "model": "",
      "state": "succeeded",
      "style": "holiday, jolly",
      "duration": 174.16
    }
  ]
}
```

Das generierte Ergebnis ähnelt dem oben genannten, womit der Prozess der Trennung von Gesang und Musik für den zuvor generierten Song abgeschlossen ist.

## Trennung von Gesang und Musik aller Spuren

Wenn nach dem Generieren eines Songs eine Trennung von Gesang und Musik aller Spuren erforderlich ist, können die folgenden Inhalte angegeben werden:

* action: Der Inhalt ist `all_stems`.
* audio\_id: Die ID des zuvor generierten Songs.

Wenn die ID des zuvor generierten Songs beispielsweise bdf23a5a-59f5-4103-b452-054a824a7f9f lautet, können die Parameter wie folgt festgelegt werden:

```json theme={null}
{
  "action": "all_stems",
  "audio_id": "bdf23a5a-59f5-4103-b452-054a824a7f9f"
}
```

Mit den obigen Parametern kann das Ergebnis der Trennung von Gesang und Musik aller Spuren erhalten werden, das Ergebnis lautet wie folgt:

```json { theme={null}
  "success": true,
  "task_id": "f4b16fb9-8478-4857-88c7-b9a1f0bb9518",
  "trace_id": "9c560ebd-4fc6-4bdb-988a-8890160a92fb",
  "data": [
    {
      "id": "f86ca64a-9519-4ea7-a592-52438e001412",
      "title": "安全之弦 (Vocals)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-015",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "99e649a7-a394-47b9-a915-d7f847285a36",
      "title": "安全之弦 (Backing Vocals)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-016",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "6d710bf7-809f-4fdc-bb63-b8cb3a456d42",
      "title": "安全之弦 (Drums)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-017",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    },
{
      "id": "e05f07e3-7d80-4713-8e51-7f176c733543",
      "title": "Saiten der Sicherheit (Bass)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-018",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "93fe7cd8-62fd-4739-b78e-142c7e0b8562",
      "title": "Saiten der Sicherheit (Gitarre)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-019",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "8367d71c-fdd3-441c-8ebe-70c33cca821b",
      "title": "Saiten der Sicherheit (Keyboard)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-020",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "28c03590-731c-416e-8fd3-95cdb3d75043",
      "title": "Saiten der Sicherheit (Perkussion)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-021",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "3d4c1a28-4e1c-485a-8201-d21bb93aca2f",
      "title": "Saiten der Sicherheit (Streicher)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-022",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "b9db8ded-01ec-4e37-b8a5-64aab3a814c2",
      "title": "Saiten der Sicherheit (Synth)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-023",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "10a5248e-32e6-42b9-8da1-678a8a392aef",
      "title": "Saiten der Sicherheit (FX)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-024",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "2d272128-111f-4901-8f62-5ae1eb43095a",
      "title": "Saiten der Sicherheit (Blechbläser)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-025",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "4a7c19a5-f8d4-4e4a-add9-aa0bad9307cc",
      "title": "Saiten der Sicherheit (Holzbläser)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-026",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "1ca774f9-3e75-48a6-941b-808875eadcd2",
      "title": "Saiten der Sicherheit (Gesang)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-027",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.770Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    },
{
      "id": "14c5ffc7-addf-4fee-afd2-4b8b3e7ee470",
      "title": "Saiten der Sicherheit (Begleitgesang)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-028",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.771Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "9d044557-450d-48ab-90dc-8eaf6f1cdb6c",
      "title": "Saiten der Sicherheit (Schlagzeug)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-029",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.771Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "efd052d0-c12f-47b3-8282-1f3ef7610e1f",
      "title": "Saiten der Sicherheit (Bass)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-030",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.771Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "5775372b-292e-4420-96ef-60e57a60cc1f",
      "title": "Saiten der Sicherheit (Gitarre)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-031",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.771Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "dab3f220-19cd-408e-9b96-30ec18f5b049",
      "title": "Saiten der Sicherheit (Keyboard)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-032",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.771Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "2d0cd6d4-af82-4bb5-86fe-d92bdb367157",
      "title": "Saiten der Sicherheit (Perkussion)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-033",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.771Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "f3191a1a-5e8d-4afe-b638-3add222d52cd",
      "title": "Saiten der Sicherheit (Streicher)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-034",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.771Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "a8834ea5-200b-4206-a812-9780ef336660",
      "title": "Saiten der Sicherheit (Synthesizer)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-035",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.771Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "f50d1a31-ef72-400a-b8ae-0367849d007d",
      "title": "Saiten der Sicherheit (FX)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-036",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.771Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }, {
      "id": "cb581673-23cc-40d6-9f9b-0f76720f0d18",
      "title": "Saiten der Sicherheit (Blechbläser)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-037",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.771Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    },
{
      "id": "d91cfb52-f0a3-4546-bf8a-2ad14c3775a5",
      "title": "安全之弦 (Woodwinds)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-038",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-06-11T02:40:30.771Z",
      "model": "chirp-ahi-stem-12-t1",
      "state": "succeeded",
      "duration": 154.92
    }
  ]
}
```

Das generierte Ergebnis ähnelt dem obigen, womit der Prozess der Stimm- und Musiktrennung des ursprünglich generierten Songs abgeschlossen ist.

## Audiospur hinzufügen

`add_stem` generiert für das angegebene Audio eine Zielinstrumenten- oder Gesangsspur und wird über `POST /suno/audios` aufgerufen.

* Erforderlich: `action`, `audio_id`, `stem_type`.
* Optional: `model`, `prompt`, `title`, `style`, `negative_tags`, `weirdness`, `style_influence`, `audio_weight`, `max_mode`, `variety`.
* Abrechnung: 0.672 Credits im normalen Modus; 1.344 Credits, wenn `max_mode` auf `true` gesetzt ist.

```json theme={null}
{
  "action": "add_stem",
  "audio_id": "dead4ee5-df4d-417b-8f7e-717722fae51a",
  "stem_type": "bass",
  "model": "chirp-v6",
  "prompt": "Add warm bass guitar",
  "style": "minimal piano pulse with warm bass guitar",
  "negative_tags": "vocals",
  "variety": "normal",
  "max_mode": false,
  "async": true
}
```

Antwort im Endzustand:

```json theme={null}
{
  "success": true,
  "task_id": "82851953-9590-4334-8bb8-ae30ccadc815",
  "trace_id": "862bbcce-1678-44ff-982d-8b439c126a5e",
  "data": [
    {
      "id": "0adc26ca-2720-4c69-b237-457a986d70e3",
          "audio_url": "https://cdn.acedata2.cloud/suno/0adc26ca-2720-4c69-b237-457a986d70e3.mp3",
      "model": "chirp-v6",
      "state": "succeeded",
      "duration": 12.8
    },
    {
      "id": "e2d39a6c-1d20-4a40-adaf-b2551815d869",
          "audio_url": "https://cdn.acedata2.cloud/suno/e2d39a6c-1d20-4a40-adaf-b2551815d869.mp3",
      "model": "chirp-v6",
      "state": "succeeded",
      "duration": 12.36
    }
  ],
  "cost": {"amount": 0.6048, "currency": "credit", "list_amount": 0.672}
}
```

## Audiospur extrahieren

`extract_stem` extrahiert die Zielaudiospur aus dem angegebenen Audio und gibt gleichzeitig die ergänzende Version zurück, aus der diese Audiospur entfernt wurde; der Aufruf erfolgt über `POST /suno/audios`.

* Erforderlich: `action`, `audio_id`, `stem_type`.
* Optional: `audio_format`; der aktuelle öffentliche Zwei-Kanal-Vertrag unterstützt nur `mp3`.
* Abrechnung: 1.12 Credits.

```json theme={null}
{
  "action": "extract_stem",
  "audio_id": "dead4ee5-df4d-417b-8f7e-717722fae51a",
  "stem_type": "bass",
  "audio_format": "mp3",
  "async": true
}
```

Das `data` im Endzustands-Response behält eine flache Audioliste bei, und `stem_sets` stellt die Zuordnung zwischen der Zielaudiospur und der ergänzenden Audiospur dar:

```json theme={null}
{
  "success": true,
  "task_id": "ae9557d0-4ff7-4a35-bcde-d881e78fbfe5",
  "trace_id": "82c51a55-7627-41a5-b72b-1b9775ca25f2",
  "data": [
    {
      "id": "3084d7e1-4278-4733-8b56-56f7ecf3f859",
      "title": "(Bass)",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3?example=audio-001",
      "model": "chirp-v6",
      "state": "succeeded",
      "duration": 12.8,
      "stem_set": 1
    },
    {
      "id": "19b83ca9-a51d-494f-a41d-5b0957f3295e",
      "title": "(Without Bass)",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3?example=audio-002",
      "model": "chirp-v6",
      "state": "succeeded",
      "duration": 12.8,
      "stem_set": 1
    },
    {
      "id": "7eb431e8-f4db-4915-902e-0e89d2b3185a",
      "title": "(Bass)",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3?example=audio-003",
      "model": "chirp-v6",
      "state": "succeeded",
      "duration": 12.8,
      "stem_set": 2
    },
    {
      "id": "495d29cc-5790-4d0a-8b95-9551a6127b61",
      "title": "(Without Bass)",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3?example=audio-004",
      "model": "chirp-v6",
      "state": "succeeded",
      "duration": 12.8,
      "stem_set": 2
    }
  ],
  "stem_sets": [
    {
      "stem_type": "bass",
      "isolated": {
        "id": "3084d7e1-4278-4733-8b56-56f7ecf3f859",
        "state": "succeeded",
        "stem_set": 1
      },
      "remainder": {
        "id": "19b83ca9-a51d-494f-a41d-5b0957f3295e",
        "state": "succeeded",
        "stem_set": 1
      }
    },
    {
      "stem_type": "bass",
      "isolated": {
        "id": "7eb431e8-f4db-4915-902e-0e89d2b3185a",
        "state": "succeeded",
        "stem_set": 2
      },
      "remainder": {
        "id": "495d29cc-5790-4d0a-8b95-9551a6127b61",
        "state": "succeeded",
        "stem_set": 2
      }
    }
  ],
  "cost": {
    "amount": 1.008,
    "currency": "credit",
    "list_amount": 1.12
  }
}
```

## Soundeffekte generieren

`sounds` generiert anhand einer Textbeschreibung einmalige oder schleifenfähige Soundeffekte und wird über `POST /suno/audios` aufgerufen.

* Erforderlich: `action`, `sound`, `sound_type`.
* Optional: `model`, `bpm`, `key`, `audio_format`; `audio_format` unterstützt derzeit nur `mp3`.
* `sound_type`: `one-shot` oder `loop`.
* Abrechnung: 0.112 Credits.

```json theme={null}
{
  "action": "sounds",
  "sound": "single soft analog synth pluck, no reverb",
  "sound_type": "one-shot",
  "model": "chirp-v6",
  "bpm": 120,
  "key": "C",
  "audio_format": "mp3",
  "async": true
}
```

```json theme={null}
{
  "success": true,
  "task_id": "f6716546-d118-40a0-ad15-09999f9f22ba",
  "trace_id": "da4c7895-e494-4bd8-83bd-132e006c94e3",
  "data": [
    {"id":"b3cd3e7d-96e4-48ef-abde-73c7ddee8b4a","title":"single soft analog synth pluck, no reverb","audio_url":"https://cdn.acedata2.cloud/suno/b3cd3e7d-96e4-48ef-abde-73c7ddee8b4a.mp3","model":"chirp-v6","state":"succeeded","duration":10},
    {"id":"f1517867-b76a-4cdf-b006-9ce6e653e0a5","title":"single soft analog synth pluck, no reverb","audio_url":"https://cdn.acedata2.cloud/suno/f1517867-b76a-4cdf-b006-9ce6e653e0a5.mp3","model":"chirp-v6","state":"succeeded","duration":10}
  ],
  "cost": {"amount": 0.1008, "currency": "credit", "list_amount": 0.112}
}
```

## Audiogeschwindigkeit anpassen

`adjust_speed` passt die Wiedergabegeschwindigkeit des angegebenen Audios an und wird über `POST /suno/audios` aufgerufen.

* Erforderlich: `action`, `audio_id`, `speed_multiplier`, `title`.
* Optional: `keep_pitch`.
* `speed_multiplier`: Bereich 0.25–4.
* Abrechnung: 0.28 Credits.

```json theme={null}
{
  "action": "adjust_speed",
  "audio_id": "dead4ee5-df4d-417b-8f7e-717722fae51a",
  "speed_multiplier": 1.1,
  "keep_pitch": true,
  "title": "Suno contract verification speed 1.1x",
  "async": true
}
```

Die Dauer des Quellaudios beträgt 9.8 Sekunden, das Ergebnis bei 1.1-facher Geschwindigkeit beträgt 8.909090909 Sekunden:

```json theme={null}
{
  "success": true,
  "task_id": "c5860fdd-76b1-40a1-b5b5-ec047e471c8a",
  "trace_id": "292ed097-3631-441c-ac80-52f326b62726",
  "data": [
    {
      "id": "02534b52-45a7-4961-834a-f473a407e62c",
      "title": "Suno contract verification speed 1.1x",
      "audio_url": "https://cdn.acedata2.cloud/suno/02534b52-45a7-4961-834a-f473a407e62c.mp3",
      "model": "chirp-v6",
      "state": "succeeded",
      "duration": 8.909090909090908
    }
  ],
  "cost": {"amount": 0.252, "currency": "credit", "list_amount": 0.28}
}
```

Das Generierungsmodell weist Zufälligkeit auf. Die Schnittstelle garantiert die Konsistenz der Parametersemantik, des Aufgabenstatus und der Antwortstruktur, garantiert jedoch nicht, dass verschiedene Anfragen vollständig identische Wellenformen erzeugen.

## Erweiterte Parameter für die benutzerdefinierte Generierung

Offiziell ist es erlaubt, im benutzerdefinierten Modus die erweiterten Parameter `weirdness`==>`Weirdness`, `style_influence`==>`Style Influence`, `audio_weight`==>`Audio Influence` für die Generierung zu verwenden, entsprechend den folgenden offiziellen Beispielen:

![](https://cdn.acedata.cloud/1xonxy.png)

Die Bereiche der erweiterten Parameter liegen alle zwischen 0 und 1, die konkreten Parameter sind wie in der folgenden Abbildung dargestellt:

![](https://cdn.acedata.cloud/7i94ih.png)

Nach dem Ausfüllen wird automatisch folgender Code generiert:

![](https://cdn.acedata.cloud/2dlbo6.png)

Der entsprechende Python-Code:

```python theme={null}
import requests

url = "https://api.acedata.cloud/suno/audios"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "action": "generate",
    "model": "chirp-v4-5",
    "lyric": "Hello Hello Hello ",
    "custom": True,
    "weirdness": 0.4,
    "style_influence": 0.4,
    "audio_weight": 0.4
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

Beim Klicken auf Ausführen kann festgestellt werden, dass ein Ergebnis wie folgt erhalten wird:

```json theme={null}
{
  "success": true,
  "task_id": "2f3aa682-e1a7-43a9-9fbb-ed0ce8668a4b",
  "trace_id": "07408194-7deb-4a52-a36d-9a9a13143b5f",
  "data": [
    {
      "id": "c66e2077-7580-43f2-9937-c67a8afcd8bd",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-039",
      "lyric": "Hello Hello Hello ",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-07-10T12:54:35.199Z",
      "model": "chirp-auk",
      "state": "succeeded",
      "style": "",
      "duration": 187.92
    },
    {
      "id": "a922f97b-307c-4c4d-aae3-a47ba8202a10",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-040",
      "lyric": "Hello Hello Hello ",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-07-10T12:54:35.199Z",
      "model": "chirp-auk",
      "state": "succeeded",
      "style": "",
      "duration": 229.64
    }
  ]
}
```

Auf diese Weise werden die erweiterten Parameter verwendet, um benutzerdefinierte Songs zu generieren, und die Ergebnisse ähneln dem Obigen.

## Songdauer steuern

Standardmäßig wird die Dauer des generierten Songs vom Modell selbst festgelegt und liegt normalerweise zwischen 30 Sekunden und 4 Minuten. Wenn ein längeres oder kürzeres Endprodukt benötigt wird, kann über den Parameter `duration` die gewünschte Dauer angegeben werden, die Einheit ist Sekunden, und der Wert ist eine ganze Zahl zwischen 10 und 360.

Dieser Parameter wird für die Songgenerierung im benutzerdefinierten Modus (wenn `custom` `true` ist) verwendet. Besonders zu beachten ist, dass `duration` ein **tendenzieller Hinweis und keine harte Einschränkung** ist: Das Modell wird diesen Wert beim Erstellen berücksichtigen, garantiert jedoch nicht, ihn zu erreichen; in tatsächlichen Tests ist die tatsächliche Dauer normalerweise deutlich kürzer als der erwartete Wert, und die Dauer der zwei Songs, die von derselben Anfrage zurückgegeben werden, kann ebenfalls um ein Mehrfaches variieren. Selbst bei vollständig identischen Anfragen kann die bei mehrfacher Übermittlung erhaltene Dauer stark variieren. Verwenden Sie ihn daher nicht als präzise Dauersteuerung; wenn geschäftlich eine feste Dauer erforderlich ist, schneiden Sie das Endprodukt nach dem Erhalt selbst zu oder versuchen Sie es erneut.

Der entsprechende Python-Code:

```python theme={null}
import requests

url = "https://api.acedata.cloud/suno/audios"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "action": "generate",
    "model": "chirp-v5-5",
    "custom": True,
    "title": "Under the City Lights",
    "style": "lo-fi piano",
    "lyric": "[Verse]\nSunrise creepin\nGold on the floor\n[Chorus]\nUnder the city lights\n",
    "duration": 330
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

Zu beachten ist, dass `duration` in der Anfrage die **erwartete Dauer** ist, während das Feld `duration` jeder einzelnen Songdatei in den Antwort-`data` die **tatsächliche Dauer** dieses Songs ist. Beide haben denselben Namen, aber unterschiedliche Bedeutungen; die tatsächliche Dauer wird nicht garantiert dem Erwartungswert entsprechen. Die Länge des Liedtexts ist einer der Hauptfaktoren, die die Dauer des fertigen Produkts beeinflussen. Wenn ein längeres fertiges Produkt benötigt wird, wird empfohlen, gleichzeitig vollständigere Liedtexte bereitzustellen.

Die Schnittstelle überprüft, dass `duration` eine ganze Zahl zwischen 10 und 360 sein muss; sie ist weiterhin nur ein Generierungsziel und keine Garantie für die Länge des fertigen Produkts.

## Add-Instrumental-Funktion

Im August 2025 hat Suno die neue Add-Instrumental-Funktion eingeführt. Zunächst muss ein Song mit A-cappella-Gesang ohne Begleitung hochgeladen werden, damit Suno die Musik dazu erstellt. Zuerst kann über die [Suno Upload API](https://platform.acedata.cloud/documents/suno-upload) ein Song mit A-cappella-Gesang ohne musikalische Begleitung hochgeladen werden. Die entsprechende Vorgehensweise ist in der folgenden Abbildung dargestellt:

![](https://cdn.acedata.cloud/fxl914.png)

Danach muss die `audio_id` nach dem Upload notiert werden. Das konkrete Ergebnis ist in der folgenden Abbildung dargestellt:

![](https://cdn.acedata.cloud/47t6wj.png)

Schließlich wurde eine `audio_id` erhalten: 92254cab-3372-4d9e-bce9-cdcfdbc39070. Danach müssen noch die folgenden Parameter ausgefüllt werden:

* action: Der Inhalt ist `underpainting`.
* underpainting\_start: Die Startzeit für das Hinzufügen einer Begleitung zum hochgeladenen Song; der Standardwert ist 0.
* underpainting\_end: Die Endzeit für das Hinzufügen einer Begleitung zum hochgeladenen Song; sie muss kleiner als die Gesamtdauer des Songs sein.
* audio\_id: Die ID des hochgeladenen Songs mit A-cappella-Gesang ohne Begleitung.
* style: Der Stil der Begleitung; am besten ohne Liedtext, da es sich schließlich um eine Begleitung handelt.

Nach dem Ausfüllen wird der folgende Code automatisch generiert:

![](https://cdn.acedata.cloud/8x1ic6.png)

Der entsprechende Python-Code:

```python theme={null}
import requests

url = "https://api.acedata.cloud/suno/audios"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "action": "underpainting",
    "model": "chirp-v4-5",
    "style": "Pop rap, uplifting, magnetic male vocals, piano, synth, electric guitar, driving bass, clear structure",
    "audio_id": "92254cab-3372-4d9e-bce9-cdcfdbc39070",
    "underpainting_end": 120
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

Nach dem Klicken auf „Ausführen“ kann festgestellt werden, dass ein Ergebnis wie folgt erhalten wird:

```json theme={null}
{
  "success": true,
  "task_id": "822d2e14-c535-4d48-a4e5-1b6ab00b04a7",
  "trace_id": "257eac2c-8e4f-44d0-8454-5e215111eefa",
  "data": [
    {
      "id": "2788cd21-bd84-422d-beb5-859c60fbf5b6",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-041",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-08-27T15:25:42.548Z",
      "model": "chirp-v4",
      "state": "succeeded",
      "style": "Pop rap, uplifting, magnetic male vocals, piano, synth, electric guitar, driving bass, clear structure",
      "duration": 10.16
    },
    {
      "id": "a4bb7220-e971-4cbf-a626-b86c648bcf55",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-042",
      "lyric": "",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-08-27T15:25:42.548Z",
      "model": "chirp-v4",
      "state": "succeeded",
      "style": "Pop rap, uplifting, magnetic male vocals, piano, synth, electric guitar, driving bass, clear structure",
      "duration": 2.52
    }
  ]
}
```

Damit ist der Vorgang abgeschlossen, dem hochgeladenen Song mit A-cappella-Gesang ohne Begleitung Musik hinzuzufügen; das Ergebnis ist ähnlich wie oben.

## Add-Vocals-Funktion

Im August 2025 hat Suno die neue Add-Vocals-Funktion eingeführt. Zunächst muss ein reines Musikstück hochgeladen werden, damit Suno Liedtexte erstellt und menschlichen Gesang erzeugt. Zuerst kann über die [Suno Upload API](https://platform.acedata.cloud/documents/suno-upload) ein Song mit A-cappella-Gesang ohne musikalische Begleitung hochgeladen werden. Die entsprechende Vorgehensweise ist in der folgenden Abbildung dargestellt:

![](https://cdn.acedata.cloud/fxl914.png)

Danach muss die `audio_id` nach dem Upload notiert werden. Das konkrete Ergebnis ist in der folgenden Abbildung dargestellt:

![](https://cdn.acedata.cloud/47t6wj.png)

Schließlich wurde eine `audio_id` erhalten: 92254cab-3372-4d9e-bce9-cdcfdbc39070. Danach müssen noch die folgenden Parameter ausgefüllt werden:

* action: Der Inhalt ist `overpainting`.
* overpainting\_start: Die Startzeit für das Hinzufügen von Gesang zum hochgeladenen Song; der Standardwert ist 0.
* overpainting\_end: Die Endzeit für das Hinzufügen von Gesang zum hochgeladenen Song; sie muss kleiner als die Gesamtdauer des Songs sein.
* audio\_id: Die ID des hochgeladenen Songs mit A-cappella-Gesang ohne Begleitung.
* custom: In diesem Modus muss der benutzerdefinierte Modus verwendet werden, um Liedtexte einzugeben.
* lyric: Die im benutzerdefinierten Modus eingegebenen Liedtexte.
* style: Der Stil der Begleitung.

Nach dem Ausfüllen wird der folgende Code automatisch generiert:

![](https://cdn.acedata.cloud/a4pbes.png)

Der entsprechende Python-Code:

```python theme={null}
import requests

url = "https://api.acedata.cloud/suno/audios"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "action": "overpainting",
    "model": "chirp-v4-5",
    "lyric": "Yea your were the best I could get \\nBut I knew that it couldn’t last \\nStayed down since we were friends \\nHad to leave those thoughts in the past \\nMade like 40k just last week \\nOn top of the 20 with my babe\\ndon’t care for what niggas say",
    "custom": True,
    "audio_id": "92254cab-3372-4d9e-bce9-cdcfdbc39070",
    "overpainting_end": 120
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

Klicken Sie auf „Ausführen“, dann können Sie feststellen, dass Sie ein Ergebnis wie folgt erhalten:

```json theme={null}
{
  "success": true,
  "task_id": "31bb250e-6614-49ec-ac85-631f224daeba",
  "trace_id": "efe8e7f3-9a65-4f13-a9f8-51e8478899df",
  "data": [
    {
      "id": "a597f945-64df-4722-a631-d436450832bd",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-043",
      "lyric": "Yea your were the best I could get \\nBut I knew that it couldn’t last \\nStayed down since we were friends \\nHad to leave those thoughts in the past \\nMade like 40k just last week \\nOn top of the 20 with my babe\\ndon’t care for what niggas say",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-08-27T15:33:51.550Z",
      "model": "chirp-v4",
      "state": "succeeded",
      "style": "",
      "duration": 105.32
    },
    {
      "id": "b41a8b91-3d88-4ebd-a6cf-732764b24954",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-044",
      "lyric": "Yea your were the best I could get \\nBut I knew that it couldn’t last \\nStayed down since we were friends \\nHad to leave those thoughts in the past \\nMade like 40k just last week \\nOn top of the 20 with my babe\\ndon’t care for what niggas say",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-08-27T15:33:51.550Z",
      "model": "chirp-v4",
      "state": "succeeded",
      "style": "",
      "duration": 148.16
    }
  ]
}
```

Damit ist der Vorgang abgeschlossen, dem hochgeladenen A-cappella-Song ohne Gesang eine Gesangsstimme hinzuzufügen; das Ergebnis ist ähnlich wie oben.

## Remaster-Funktion

Im Dezember 2025 hat suno die neue Remaster-Funktion eingeführt. Diese Funktion kann Songs erneut generieren, kontoübergreifend ist dies nicht möglich, und dann müssen wir die folgenden Parameter ausfüllen:

* action: Der Inhalt ist `remaster`.
* audio\_id: Die ID des Songs, der erneut generiert werden soll.
* model: Unterstützt nur v4.5+ und v5.
* variation\_category: Wird nur ab Version v5 unterstützt und hat nur 3 Werte: high, normal, subtle.

Nach dem Ausfüllen wird der folgende Code automatisch generiert:

![](https://cdn.acedata.cloud/7h4zmw.png)

Der entsprechende Python-Code:

```python theme={null}
import requests

url = "https://api.acedata.cloud/suno/audios"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "action": "remaster",
    "variation_category": "high",
    "audio_id": "21fd46d4-45c3-4826-bec9-3f3df667902e"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

Klicken Sie auf „Ausführen“, dann können Sie feststellen, dass Sie ein Ergebnis wie folgt erhalten:

```json theme={null}
{
  "success": true,
  "task_id": "791ee74c-9363-4352-afe7-babb19b89899",
  "trace_id": "77acda57-c3d4-4e11-a506-4f50e0609916",
  "data": [
    {
      "id": "b0515cdf-9cb5-46cd-b0fe-10a239dc9274",
      "title": "Navidad en costura  (Remastered)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-045",
      "image_large_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-046",
      "lyric": "En Teror las clases siguen,\nni en Navidad hay parón;\ncose el grupo entre villancicos\ny un buen trocito de turrón.\nLa Popular abre sus puertas,\ny el taller suena mejor;\nhilo, aguja y canto alegre\nlo pasaremos mejor\nSeguimos en las costuras,\ncon música y diversión;\nlos alumnos comeremos\nGolosinas un montón ",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-12-04T13:09:59.936Z",
      "model": "chirp-v4",
      "state": "succeeded",
      "style": "Villancico",
      "duration": 32.2
    },
    {
      "id": "06edab94-a4f9-4c0c-abac-a2e8a97c76a8",
      "title": "Navidad en costura  (Remastered)",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-047",
      "image_large_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-048",
      "lyric": "En Teror las clases siguen,\nni en Navidad hay parón;\ncose el grupo entre villancicos\ny un buen trocito de turrón.\nLa Popular abre sus puertas,\ny el taller suena mejor;\nhilo, aguja y canto alegre\nlo pasaremos mejor\nSeguimos en las costuras,\ncon música y diversión;\nlos alumnos comeremos\nGolosinas un montón ",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2025-12-04T13:09:59.936Z",
      "model": "chirp-v4",
      "state": "succeeded",
      "style": "Villancico",
      "duration": 32.2
    }
  ]
}
```

Damit ist der Vorgang abgeschlossen, bereits generierte Songs erneut zu generieren; das Ergebnis ist ähnlich wie oben.

## Mashup-Funktion zur Erstellung gemischter Songs

Im Dezember 2025 hat suno die neue Mashup-Funktion eingeführt. Diese Funktion kann anhand von zwei Referenzsongs Songs generieren, und dann müssen wir die folgenden Parameter ausfüllen:

* action: Der Inhalt ist `mashup`.
* mashup\_audio\_ids: Die IDs der zwei Referenzsongs.
  Nach dem Ausfüllen wird automatisch folgender Code generiert:

![](https://cdn.acedata.cloud/8mo82l.png)

Der entsprechende Python-Code:

```python theme={null}
import requests

url = "https://api.acedata.cloud/suno/audios"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "action": "mashup",
    "lyric": "Sambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\n\\nSambuy come  \\nSambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\n\\nSambuy come  \\nSambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\n\\nSambuy come  \\nSambuy come back  \\nSambuy come, Sambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\n\\nSambuy come  \\nSambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\nSambuy come back",
    "model": "chirp-v4-5",
    "custom": True,
    "instrumental": False,
    "mashup_audio_ids": ["9f102969-0024-479e-b38f-c0c5db21383d","6aebb715-701c-433f-b976-a7ff5cf16255"]
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

Klicken Sie auf „Ausführen“, und Sie werden feststellen, dass Sie ein Ergebnis wie folgt erhalten:

```json theme={null}
{
  "success": true,
  "task_id": "3fe070eb-2ab1-4424-909c-acfe3ca761af",
  "trace_id": "2b220382-7a84-4853-ae43-05cdcad233a9",
  "data": [
    {
      "id": "5ff751dc-0e72-4de9-a54b-2cad50984b47",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-049",
      "image_large_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-050",
      "lyric": "Sambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\n\\nSambuy come  \\nSambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\n\\nSambuy come  \\nSambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\n\\nSambuy come  \\nSambuy come back  \\nSambuy come, Sambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\n\\nSambuy come  \\nSambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\nSambuy come back",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2026-01-25T15:13:30.181Z",
      "model": "chirp-v4-5",
      "state": "succeeded",
      "style": "",
      "duration": 219.08
    },
    {
      "id": "19c515c4-d7b3-4a17-8ab0-dd1ebd4861b8",
      "title": "",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-051",
      "image_large_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-052",
      "lyric": "Sambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\n\\nSambuy come  \\nSambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\n\\nSambuy come  \\nSambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\n\\nSambuy come  \\nSambuy come back  \\nSambuy come, Sambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\n\\nSambuy come  \\nSambuy come back  \\nBluespawn, greenspawn are making you a spawn  \\nSambuy come back",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2026-01-25T15:13:30.181Z",
      "model": "chirp-v4-5",
      "state": "succeeded",
      "style": "",
      "duration": 163.12
    }
  ]
}
```

Damit ist der Vorgang der Mashup-Generierung anhand von Referenzsongs abgeschlossen, und das Ergebnis ähnelt dem obenstehenden.

## Samples Sampling-Generierung von Songs

Die `samples` hier beziehen sich auf das Sampling eines einzelnen Audiointervalls: Wählen Sie aus einem vorhandenen Audio eine Start- und Endzeit aus und verwenden Sie diesen Ausschnitt als Sampling-Material für die Erstellung. Dies unterscheidet sich von der unten verwendeten Inspo-Funktion zur Inspirationskreation mit 1 bis 4 vollständigen Referenzaudios. Die folgenden Parameter müssen ausgefüllt werden:

* action: Der Inhalt ist `samples`.
* samples\_start: Startzeit des Samplings.
* samples\_end: Endzeit des Samplings.
* audio\_id: Die ID des Referenzsongs, der gesampelt werden soll.

Nach dem Ausfüllen wird automatisch folgender Code generiert:

![](https://cdn.acedata.cloud/vkzumz.png)

Der entsprechende Python-Code:

```python theme={null}
import requests

url = "https://api.acedata.cloud/suno/audios"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "action": "samples",
    "model": "chirp-v5",
    "lyric": "[Verse 1]\\nPhone lit up\\nHeadline in my hand\\nFeels made up\\nStill says “you won’t understand”\\nYour name\\nMy name\\nSide by side in the scroll\\nCold black text\\nOn a story I used to hold\\n\\n[Chorus]\\nYou’re breaking news\\nAnd I’m just breaking\\nFront-page truth\\nHeart still shaking\\nEverybody reads\\nWhat we already knew\\nYou’re a story now\\nAnd I’m the one you broke it to\\n\\n[Verse 2]\\nNeighbors talk\\nThrough a half-closed door\\nCoffee cools\\nOn a cracked old floor\\nYour suitcase snaps\\nLike a camera flash\\nOne last quote\\nThen you cut to black\\n\\n[Chorus]\\nYou’re breaking news\\nAnd I’m just breaking\\nFront-page truth\\nHeart still shaking\\nEverybody reads\\nWhat we already knew\\nYou’re a story now\\nAnd I’m the one you broke it to\\n\\n[Bridge]\\nIs there a line\\nWhere we rewind\\nOr just a feed\\nThat leaves us behind\\nTell me\\nWho gets\\nThe final view\\nWhen I stop trending\\nWith you\\n\\n[Chorus]\\nYou’re breaking news\\nAnd I’m just breaking\\nFront-page truth\\nHeart still shaking\\nEverybody reads\\nWhat we already knew\\nYou’re a story now\\nAnd I’m the one you broke it to (yeah)",
    "custom": True,
    "instrumental": False,
    "audio_id": "0fa07665-6b8e-4a8b-8bd3-7e0cfcdada88",
    "samples_end": 102.16,
    "samples_start": 59.88
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

Klicken Sie auf „Ausführen“, und Sie werden feststellen, dass Sie ein Ergebnis wie folgt erhalten:

```json theme={null}
{
  "success": true,
  "task_id": "12135a45-6384-4683-9bb1-64f19933915a",
  "trace_id": "683e559d-340e-4c72-8fae-e683442ac7e9",
  "data": [
    {
      "id": "9a0b680f-a9ea-4a36-8695-8ea777ab6ee7",
      "title": "Whistle in the Wind",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-053",
      "image_large_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-054",
      "lyric": "[Verse 1]\nPhone lit up\nHeadline in my hand\nFeels made up\nStill says “you won’t understand”\nYour name\nMy name\nSide by side in the scroll\nCold black text\nOn a story I used to hold\n[Chorus]\nYou’re breaking news\nAnd I’m just breaking\nFront-page truth\nHeart still shaking\nEverybody reads\nWhat we already knew\nYou’re a story now\nAnd I’m the one you broke it to\n[Verse 2]\nNeighbors talk\nThrough a half-closed door\nCoffee cools\nOn a cracked old floor\nYour suitcase snaps\nLike a camera flash\nOne last quote\nThen you cut to black\n[Chorus]\nYou’re breaking news\nAnd I’m just breaking\nFront-page truth\nHeart still shaking\nEverybody reads\nWhat we already knew\nYou’re a story now\nAnd I’m the one you broke it to\n[Bridge]\nIs there a line\nWhere we rewind\nOr just a feed\nThat leaves us behind\nTell me\nWho gets\nThe final view\nWhen I stop trending\nWith you\n[Chorus]\nYou’re breaking news\nAnd I’m just breaking\nFront-page truth\nHeart still shaking\nEverybody reads\nWhat we already knew\nYou’re a story now\nAnd I’m the one you broke it to (yeah)",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2026-01-31T14:34:45.043Z",
      "model": "chirp-v5",
      "state": "succeeded",
      "style": "acoustic with a hint of optimism,folk-pop,female vocals",
      "duration": 176.92
    },
    {
      "id": "66473dee-3aaf-43b2-80fd-76568b3abbb1",
      "title": "Whistle in the Wind",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-055",
      "image_large_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-056",
      "lyric": "[Verse 1]\nPhone lit up\nHeadline in my hand\nFeels made up\nStill says “you won’t understand”\nYour name\nMy name\nSide by side in the scroll\nCold black text\nOn a story I used to hold\n[Chorus]\nYou’re breaking news\nAnd I’m just breaking\nFront-page truth\nHeart still shaking\nEverybody reads\nWhat we already knew\nYou’re a story now\nAnd I’m the one you broke it to\n[Verse 2]\nNeighbors talk\nThrough a half-closed door\nCoffee cools\nOn a cracked old floor\nYour suitcase snaps\nLike a camera flash\nOne last quote\nThen you cut to black\n[Chorus]\nYou’re breaking news\nAnd I’m just breaking\nFront-page truth\nHeart still shaking\nEverybody reads\nWhat we already knew\nYou’re a story now\nAnd I’m the one you broke it to\n[Bridge]\nIs there a line\nWhere we rewind\nOr just a feed\nThat leaves us behind\nTell me\nWho gets\nThe final view\nWhen I stop trending\nWith you\n[Chorus]\nYou’re breaking news\nAnd I’m just breaking\nFront-page truth\nHeart still shaking\nEverybody reads\nWhat we already knew\nYou’re a story now\nAnd I’m the one you broke it to (yeah)",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "",
      "created_at": "2026-01-31T14:34:45.043Z",
      "model": "chirp-v5",
      "state": "succeeded",
      "style": "acoustic with a hint of optimism,folk-pop,female vocals",
      "duration": 177.48
    }
  ]
}
```

Damit ist der Vorgang zur Generierung eines Songs per Sampling abgeschlossen, das Ergebnis ist ähnlich wie oben.

## Inspo-Inspirations-Kreationsfunktion

Die Inspo-Inspirations-Kreationsfunktion kann anhand von 1 bis 4 vollständigen Referenz-Audiodateien neue Musik generieren und unterstützt das Ziehen oder Hochladen von Audio als Inspirationsquelle. Die API verwendet die bestehende `inspo`-Aktion: Der Client stellt öffentlich zugängliche Audio-URLs bereit, und der Dienst erledigt automatisch die Vorbereitung der Referenz-Audios und die Kreation, ohne dass der Client Liedtexte, Stil oder Dauer separat auslesen und dann die Anfrage zusammenstellen muss. Sie unterscheidet sich vom obigen Bereichs-Sampling und auch vom Cover, das den Stil des Originalsongs nachbildet. Bei der Verwendung müssen die folgenden Parameter ausgefüllt werden:

* action: Der Inhalt ist `inspo`.
* audio\_urls: Eine Liste von URLs der Referenz-Audios; es müssen 1 bis 4 öffentlich zugängliche Audio-Adressen bereitgestellt werden.
* model: Das verwendete Modell; empfohlen wird `chirp-v6`.
* prompt: Liedtext oder kreativer Hinweistext (optional).

> Hinweis: Die Referenz-Audios müssen öffentlich zugängliche Audiodateien sein. Wenn ein Referenz-Audio vollständig mit einer bekannten Aufnahme in der Musikbibliothek der Plattform übereinstimmt, kann Suno die Generierung aufgrund einer Urheberrechtsprüfung ablehnen. Es wird empfohlen, eigene oder von Suno generierte Audios als Inspirationsquelle zu verwenden.

Der entsprechende Python-Code:

```python theme={null}
import requests

url = "https://api.acedata.cloud/suno/audios"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "action": "inspo",
    "model": "chirp-v6",
    "audio_urls": [
        "https://cdn.acedata.cloud/uploads/a0bc051f-42c2-4a46-aeb4-582dcc884ad2"
    ],
    "prompt": "Rework these references as warm acoustic folk with soft vocals"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

Im Folgenden wird ein verifizierter historischer Antwort-Schnappschuss beibehalten; der Schnappschuss verwendete damals `chirp-v5`, das aktuelle Anfragebeispiel empfiehlt `chirp-v6`, und die Rückgabestruktur ist identisch:

```json theme={null}
{
    "success": true,
    "task_id": "725e6b41-78d0-4adf-856c-05e81098c029",
    "trace_id": "8c2f0b3e-2f6a-4738-8b1d-c58068ca3dab",
    "data": [
        {
            "id": "20ca5628-86e0-4c32-8ae4-9f0c481e45f3",
            "title": "Inspo Demo",
            "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-057",
            "lyric": "",
            "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
            "video_url": "",
            "created_at": "2026-06-18T13:01:53.910Z",
            "model": "chirp-v5",
            "state": "succeeded",
            "style": "acoustic, folk, warm",
            "duration": 36.92
        },
        {
            "id": "8744a796-9961-45af-868d-4f3bc1c44257",
            "title": "Inspo Demo",
            "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-058",
            "lyric": "",
            "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
            "video_url": "",
            "created_at": "2026-06-18T13:01:53.910Z",
            "model": "chirp-v5",
            "state": "succeeded",
            "style": "acoustic, folk, warm",
            "duration": 84.16
        }
    ]
}
```

Damit ist der Vorgang der Inspirationserstellung abgeschlossen, und das Rückgabeergebnis entspricht dem der normalen Liedgenerierung.

## Asynchroner Rückruf

Da Suno relativ lange für die Musikgenerierung benötigt, etwa 1–2 Minuten, bleibt die HTTP-Anfrage bei einer längeren Nichtantwort der API dauerhaft verbunden, was zu zusätzlichem Verbrauch von Systemressourcen führt. Daher bietet diese API auch Unterstützung für asynchrone Rückrufe.

Der gesamte Ablauf ist: Wenn der Client eine Anfrage initiiert, gibt er zusätzlich ein Feld `callback_url` an. Nachdem der Client die API-Anfrage initiiert hat, gibt die API sofort ein Ergebnis zurück, das ein Feld `task_id` enthält, welches die aktuelle Aufgaben-ID darstellt. Nachdem die Aufgabe abgeschlossen ist, wird das Ergebnis der Musikgenerierung in Form von POST JSON an die vom Client angegebene `callback_url` gesendet, die ebenfalls das Feld `task_id` enthält, sodass die Aufgabenergebnisse über die ID verknüpft werden können.

Im Folgenden erfahren wir anhand eines Beispiels, wie die konkrete Vorgehensweise aussieht.

Zunächst einmal ist der Webhook-Rückruf ein Dienst, der HTTP-Anfragen empfangen kann. Entwickler sollten ihn durch die URL eines selbst eingerichteten HTTP-Servers ersetzen. Zur einfacheren Demonstration wird hier eine öffentliche Webhook-Beispielwebsite [https://webhook.site/](https://webhook.site/) verwendet. Beim Öffnen dieser Website erhalten Sie eine Webhook-URL, wie in der Abbildung gezeigt:

![](https://cdn.acedata.cloud/fwfqin.png)

Kopieren Sie diese URL, dann kann sie als Webhook verwendet werden. Das Beispiel hier ist [https://webhook.site/03e60575-3d96-4132-b681-b713d78116e2](https://webhook.site/03e60575-3d96-4132-b681-b713d78116e2).

Als Nächstes können wir das Feld `callback_url` auf die oben genannte Webhook-URL setzen und gleichzeitig `prompt` ausfüllen, wie in der Abbildung gezeigt:

![](https://cdn.acedata.cloud/x8xql1.png)

Klicken Sie auf Ausführen, und Sie können feststellen, dass sofort ein Ergebnis wie folgt erhalten wird:

```
{
  "task_id": "44472ab8-783b-4054-b861-5bf14e462f60"
}
```

Nach kurzem Warten können wir unter [https://webhook.site/03e60575-3d96-4132-b681-b713d78116e2](https://webhook.site/03e60575-3d96-4132-b681-b713d78116e2) das Ergebnis der Liedgenerierung beobachten, wie in der Abbildung gezeigt:

![](https://cdn.acedata.cloud/f9kosb.png)

Der Inhalt lautet wie folgt:

```json theme={null}
{
  "success": true,
  "task_id": "44472ab8-783b-4054-b861-5bf14e462f60",
  "data": [
    {
      "id": "da4324e5-84b2-484b-b0e9-dd261381c594",
      "title": "Winter Whispers",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-059",
      "lyric": "[Verse]\nSnow falling gently from the sky\nChildren giggling as they pass by\nFire crackling\nCozy and warm\nChristmas spirit begins to swarm\n[Verse 2]\nTwinkling lights\nA sight to behold\nStockings hung\nWaiting to be filled with gold\nGifts wrapped with love\nPiled high\nExcitement in the air\nYou can't deny\n[Chorus]\nWinter whispers in the wind\nJoy and love it brings\nLet's celebrate this season\nWith the ones we're missing",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "https://cdn.acedata.cloud/assets/examples/gemini/04a043bd-6b23-4b4e-945c-ce48158c3eee-3a89912507c7.mp4?example=video-003",
      "created_at": "2024-05-11T07:33:05.430Z",
      "model": "chirp-v3",
      "prompt": "A song for Christmas",
      "style": "pop"
    },
    {
      "id": "b878a87b-a0db-4046-8ccd-ecd2fb3d4372",
      "title": "Winter Whispers",
      "image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-060",
      "lyric": "[Verse]\nSnow falling gently from the sky\nChildren giggling as they pass by\nFire crackling\nCozy and warm\nChristmas spirit begins to swarm\n[Verse 2]\nTwinkling lights\nA sight to behold\nStockings hung\nWaiting to be filled with gold\nGifts wrapped with love\nPiled high\nExcitement in the air\nYou can't deny\n[Chorus]\nWinter whispers in the wind\nJoy and love it brings\nLet's celebrate this season\nWith the ones we're missing",
      "audio_url": "https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3",
      "video_url": "https://cdn.acedata.cloud/assets/examples/gemini/04a043bd-6b23-4b4e-945c-ce48158c3eee-3a89912507c7.mp4?example=video-004",
      "created_at": "2024-05-11T07:33:05.430Z",
      "model": "chirp-v3",
      "prompt": "A song for Christmas",
      "style": "pop"
    }
  ]
}
```

Man kann sehen, dass das Ergebnis ein Feld `task_id` enthält. Die anderen Felder sind ähnlich wie oben, und über dieses Feld kann die Verknüpfung der Aufgaben realisiert werden.

Natürlich können wir die Ergebnisse auch über Streaming-Aufrufe abrufen. Wir müssen nur den Wert von `accept` im Anfrage-Header auf `application/x-ndjson` setzen. Im Folgenden wird eine Beispieleingabe zur Demonstration verwendet:

![](https://cdn.acedata.cloud/vgffvk.png)

Während des Wartens können wir die folgende Ausgabe erhalten:

```json theme={null}
{"success":true,"task_id":"1af4b454-ce84-4512-a0a2-de3f8574ecd8","data":[{"id":"1f610752-f426-4fd5-89a8-ba2ad0370881","title":"Snowflakes and Mistletoe","lyric":"[Verse]\nLights are tangled on the tree again\nThe cat’s knocked over the wreath\nCookies burning in the oven too\nBut I’m still grinning through my teeth\n[Prechorus]\nSnow is falling like glitter in the sky\nI’ve got a feeling this year’s gonna fly\n[Chorus]\nSnowflakes and mistletoe\nEverywhere I go\nI know\nLove is the gift\nThe glow\nSnowflakes and mistletoe\n[Verse 2]\nGrandma’s singing a little off-key\nThe kids are laughing too loud\nThe dog’s stolen a turkey leg\nChaos is a Christmas crowd\n[Prechorus]\nBut the fire’s crackling\nWarm and bright\nAnd my heart’s a candle tonight\n[Chorus]\nSnowflakes and mistletoe\nEverywhere I go\nI know\nLove is the gift\nThe glow\nSnowflakes and mistletoe","audio_url":"","video_url":"","created_at":"2025-12-13T11:29:25.101Z","model":"chirp-v5","state":"pending","prompt":"A song for Christmas","style":"uplifting, orchestral with bells and acoustic guitar"},{"id":"d1a3109d-799b-401e-b032-4b501bcf26f3","title":"Snowflakes and Mistletoe","lyric":"[Verse]\nLights are tangled on the tree again\nThe cat’s knocked over the wreath\nCookies burning in the oven too\nBut I’m still grinning through my teeth\n[Prechorus]\nSnow is falling like glitter in the sky\nI’ve got a feeling this year’s gonna fly\n[Chorus]\nSnowflakes and mistletoe\nEverywhere I go\nI know\nLove is the gift\nThe glow\nSnowflakes and mistletoe\n[Verse 2]\nGrandma’s singing a little off-key\nThe kids are laughing too loud\nThe dog’s stolen a turkey leg\nChaos is a Christmas crowd\n[Prechorus]\nBut the fire’s crackling\nWarm and bright\nAnd my heart’s a candle tonight\n[Chorus]\nSnowflakes and mistletoe\nEverywhere I go\nI know\nLove is the gift\nThe glow\nSnowflakes and mistletoe","audio_url":"","video_url":"","created_at":"2025-12-13T11:29:25.101Z","model":"chirp-v5","state":"pending","prompt":"A song for Christmas","style":"uplifting, orchestral with bells and acoustic guitar"}]}
{"success":true,"task_id":"1af4b454-ce84-4512-a0a2-de3f8574ecd8","trace_id":"4440342a-41c4-4140-8bb1-3537a598ca2e","data":[{"id":"1f610752-f426-4fd5-89a8-ba2ad0370881","title":"Snowflakes and Mistletoe","image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-073","image_large_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-074","lyric":"[Verse]\nLights are tangled on the tree again\nThe cat’s knocked over the wreath\nCookies burning in the oven too\nBut I’m still grinning through my teeth\n[Prechorus]\nSnow is falling like glitter in the sky\nI’ve got a feeling this year’s gonna fly\n[Chorus]\nSnowflakes and mistletoe\nEverywhere I go\nI know\nLove is the gift\nThe glow\nSnowflakes and mistletoe\n[Verse 2]\nGrandma’s singing a little off-key\nThe kids are laughing too loud\nThe dog’s stolen a turkey leg\nChaos is a Christmas crowd\n[Prechorus]\nBut the fire’s crackling\nWarm and bright\nAnd my heart’s a candle tonight\n[Chorus]\nSnowflakes and mistletoe\nEverywhere I go\nI know\nLove is the gift\nThe glow\nSnowflakes and mistletoe","audio_url":"https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3","video_url":"","created_at":"2025-12-13T11:29:25.101Z","model":"chirp-v5","state":"succeeded","prompt":"A song for Christmas","style":"uplifting, orchestral with bells and acoustic guitar","duration":129.92},{"id":"d1a3109d-799b-401e-b032-4b501bcf26f3","title":"Snowflakes and Mistletoe","image_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-075","image_large_url": "https://cdn.acedata.cloud/e724d7f13d.png?example=image-076","lyric":"[Verse]\nLights are tangled on the tree again\nThe cat’s knocked over the wreath\nCookies burning in the oven too\nBut I’m still grinning through my teeth\n[Prechorus]\nSnow is falling like glitter in the sky\nI’ve got a feeling this year’s gonna fly\n[Chorus]\nSnowflakes and mistletoe\nEverywhere I go\nI know\nLove is the gift\nThe glow\nSnowflakes and mistletoe\n[Verse 2]\nGrandma’s singing a little off-key\nThe kids are laughing too loud\nThe dog’s stolen a turkey leg\nChaos is a Christmas crowd\n[Prechorus]\nBut the fire’s crackling\nWarm and bright\nAnd my heart’s a candle tonight\n[Chorus]\nSnowflakes and mistletoe\nEverywhere I go\nI know\nLove is the gift\nThe glow\nSnowflakes and mistletoe","audio_url":"https://cdn.acedata.cloud/assets/examples/fish/5ade0339-5f11-487e-aacc-06a908271706-8e3fcb0e5547.mp3","video_url":"","created_at":"2025-12-13T11:29:25.101Z","model":"chirp-v5","state":"succeeded","prompt":"A song for Christmas","style":"uplifting, orchestral with bells and acoustic guitar","duration":127.16}]}
```

Die Streaming-Antwort sendet für dieselbe `task_id` nacheinander den Verarbeitungsstatus und das Endergebnis; oben wurden nur die erste und die endgültige reale Antwort beibehalten, wiederholte Zwischenaktualisierungen wurden ausgelassen.

## Fehlerbehandlung

Wenn ein Fehler auftritt, erhalten Sie eine ähnliche Fehlermeldung wie die folgende:

```json theme={null}
{
  "success": false,
  "error": {
    "code": "forbidden",
    "message": "Song Description contained artist name: eminem"
  },
  "trace_id": "9bb7c2f4-3b7b-4965-b50a-f663874b1b6f",
  "task_id": "9bb3a2a6-c438-436d-a9f3-fa466abc077c"
}
```

Nachfolgend finden Sie die Liste von HTTP-Statuscode, `error.code` und `error.message`:

> Hinweis: Die Limits und Fehlermeldungstexte verschiedener Upstream-Konten können abweichen. In der Regel haben `chirp-v3-5`/`chirp-v4` niedrigere `style`-Limits (200), während `chirp-v4-5` und höher normalerweise bis zu 1000 unterstützen; bei einem älteren Upstream können kompatible Meldungen wie `Tags too long.` oder `style must be less than or equal 120` erscheinen.
> \| Statuscode | `error.code`  | `error.message`                                                 |
> \| ----------- | ------------- | --------------------------------------------------------------- |
> \| 400         | `bad_request` | `Die Song-ID existiert nicht oder wurde offline genommen.`      |
> \| 400         | `bad_request` | `Prompt zu lang.`                                               |
> \| 400         | `bad_request` | `Tags zu lang.`                                                 |
> \| 400         | `bad_request` | `Hochgeladenes Audio stimmt mit einem bestehenden Kunstwerk überein.` |
> \| 400         | `bad_request` | `instrumental muss ein Boolean sein`                            |
> \| 400         | `bad_request` | `Titel zu lang.`                                                |
> \| 400         | `bad_request` | `Thema zu lang.`                                                |
> \| 400         | `bad_request` | `style muss kleiner oder gleich 120 sein`                       |
> \| 400         | `bad_request` | `custom muss ein Boolean sein`                                  |
> \| 400         | `bad_request` | `audio_id ist erforderlich, wenn Audio erweitert wird`          |
> \| 400         | `bad_request` | `continue_at ist erforderlich, wenn Audio erweitert wird`       |
> \| 400         | `bad_request` | `continue_at muss eine Zahl größer als 0 sein`                  |
> \| 400         | `bad_request` | `lyric ist erforderlich, wenn Audio erweitert wird und instrumental false ist` |
> \| 400         | `bad_request` | `prompt ist erforderlich, wenn Audio generiert wird`            |
> \| 400         | `bad_request` | `lyric ist erforderlich, wenn benutzerdefiniertes Audio generiert wird` |
> \| 403         | `forbidden`   | `Prompt wahrscheinlich fehlerhaft formatiert`                   |
> \| 403         | `forbidden`   | `Prompt wahrscheinlich urheberrechtlich geschützt`              |
> \| 403         | `forbidden`   | `Prompt enthielt unangemessenes Material`                       |
> \| 403         | `forbidden`   | `Songbeschreibung zur Moderation markiert`                      |
> \| 403         | `forbidden`   | `Songbeschreibung enthielt Künstlernamen`                       |
> \| 403         | `forbidden`   | `Tags enthielten Künstlernamen`                                 |
> \| 403         | `forbidden`   | `Liedtext enthielt urheberrechtlich geschütztes Material`       |
> \| 403         | `forbidden`   | `Songbeschreibung enthielt Produzenten-Tag`                     |
> \| 403         | `forbidden`   | `Allgemeiner openAI-Fehler`                                     |
> \| 403         | `forbidden`   | `Prompt zur Moderation markiert`                                |
> \| 500         | `api_error`   | `Liedtext konnte nicht aus der Songbeschreibung generiert werden` |
> \| 500         | `api_error`   | `Job ist mit unbekanntem Fehler fehlgeschlagen`                 |
> \| 500         | `api_error`   | `Kein verfügbarer Worker im System`                             |
> \| 500         | `api_error`   | `Dienst wird gewartet, Generierung pausiert`                    |
> \| 504         | `timeout`     | `Zeitüberschreitung beim Warten auf die Audiogenerierung`       |


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