Replace Section-API (ersätta avsnitt)

Uppdaterad 2026-09-18 · Suno-API-teamet

Beskrivning av ändpunkten

Replace Section regenererar ett tidsintervall i en befintlig låt på plats. Det passar för att rätta en textrad eller byta ut en passage.

Ändpunkt: POST /api/music/replace-section

Fakturering: Betalt, för närvarande som standard 0,6 ¥ per anrop. Det faktiskt debiterade beloppet följer den aktuella prisinställningen i backoffice.

Max Mode / Variety: den här ändpunkten stöder de valfria parametrarna max_mode och variety (0-4). Med max_mode på debiteras anropet till dubbelt pris (0,6 → 1,2 ¥ per anrop); variety kostar inget extra. Vad de betyder och hur de skickas står i avsnittet "Avancerade parametrar" i Översikt över det nya API:t.

Väntetider och timeouts (viktigt): detta är en synkron ändpunkt — beställningen accepteras och lämnas till generering först när svaret kommer. Mätt: de flesta anrop svarar på 1-3 sekunder, omkring 10% tar längre än 30 sekunder och det längsta är cirka 230 sekunder. Ställ in klientens timeout på 300 sekunder eller mer; inget svar betyder inte att inget genererades, och försök inte igen direkt efter en timeout (det duplicerar beställningen och debiterar igen). Om anslutningen bröts, kontrollera senare med GET /api/music/songs. Se "Väntetider och timeout-inställningar" i Översikt över det nya API:t.

Begäransparametrar

Headers

Parameter Typ Krävs Anmärkningar
Authorization string ja Bearer YOUR_API_KEY
Content-Type string ja application/json

Brödtextparametrar

Parameter Typ Krävs Standard Anmärkningar
model string nej suno-v6 Modellnamn mot kund: suno-v6, suno-v6-wild eller suno-v6-mini
audioId string ja - ID för originallåten
startSeconds number ja - Startsekund för ersättningen; decimaler tillåtna. Avsnittet måste vara minst 2 sekunder långt
endSeconds number ja - Slutsekund för ersättningen; decimaler tillåtna. Måste vara större än startSeconds, och intervallet måste ligga inom originallåtens längd
contextLyrics string ja - Hela låtens fullständiga text, används som genereringskontext (kompatibel stavning prompt). Utan den blir svaret 400
contextWindowLyrics string nej samma som contextLyrics Texten runt passagen som ersätts (en eller två rader före och efter räcker), används för övergången; utelämnad används contextLyrics
infillLyrics string nej samma som contextLyrics Den nya texten som sätts in; utelämnad används contextLyrics (vilket innebär att sjunga om passagen med originaltexten)
style string nej - Stiltaggar
title string nej - Titel
negativeTags string nej - Uteslutna stilar
requestedAt number nej - Tidsstämpel för begäran

startSeconds och endSeconds anges i sekunder och tar decimaler; startSeconds måste vara mindre än endSeconds och intervallet måste ligga inom originallåtens längd. requestedAt används bara när du behöver skicka begärandetiden, som Unix-tidsstämpel i sekunder (inte millisekunder); det kan normalt utelämnas.

Ersättning är också en asynkron uppgift. Den returnerade clipen kan börja i pending, och en tom ljudadress då är normalt; använd den returnerade riktiga song_id för att hämta slutresultatet.

Avsnittets längd: minst 2 sekunder (viktigt)

Intervallet som ska ersättas får inte vara kortare än 2 sekunder. Mätt: intervall på 1,0 / 1,2 / 1,5 sekunder misslyckades alla, medan 2,0 sekunder och mer fungerade.

Är intervallet för kort svarar plattformen inte med ett "parameterfel" utan med ett meddelande som är lätt att feltolka:

{"error":{"message":"You don't have access to this model. Upgrade your plan to use it.",
          "type":"bad_response_status_code","code":"bad_response_status_code"}}

Den meningen är inte ett konto- eller abonnemangsproblem — avsnittet är för kort. Förläng intervallet över 2 sekunder och skicka igen.

Exempelbegäran

curl -X POST https://www.suno-api.io/api/music/replace-section \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "suno-v6",
    "audioId": "clip_id",
    "startSeconds": 30,
    "endSeconds": 45,
    "contextLyrics": "fullständig kontexttext",
    "contextWindowLyrics": "kontexttext för fönstret",
    "infillLyrics": "ersättningstext",
    "style": "Mandopop, acoustic",
    "title": "Ersatt version",
    "negativeTags": "noise"
  }'

Svar

{
  "code": 200,
  "message": "success",
  "data": {
    "clips": [
      {
        "song_id": "replace_clip_id",
        "song_title": "Ersatt version",
        "status": "pending"
      }
    ],
    "replaceTask": "infill",
    "clipId": "clip_id",
    "source_update": {}
  }
}

Kompatibla fält

NästaAPI för att lägga till komp (instrumental)

Skaffa en API-nyckel

Skapa en API-nyckel i konsolen efter registreringen. Varje generering kostar 0,6 ¥ och returnerar 2 spår, nedladdningar är obegränsade och inget telefonnummer krävs.

Hämta API-nyckel Tillbaka till översikten