MIDI-ophaal-API
Beschrijving van het endpoint
Het MIDI-endpoint converteert tracks die al stems hebben naar een standaard MIDI-bestand, voor arrangement, verder creatief werk of import in een DAW.
Suno levert geen downloadadres voor MIDI-bestanden; het levert alleen de nootdata van elke track (toonhoogte, begin- en eindtijd, velocity). Dit endpoint zet die nootdata om in een standaard MIDI-bestand (SMF format 1) en geeft dat direct terug, dus wat u ontvangt is altijd een echt .mid-bestand dat een DAW kan openen.
Endpoint: POST /api/music/download-file
Deze pagina is het MIDI-specifieke voorbeeld. De volledige beschrijving van de downloadfamilie (mediaadressen, enkel bestand, verpakken, preview tijdens het genereren) staat in de API voor het downloaden en beluisteren van nummer-media.
Facturering: Gratis. Dit endpoint leest de nootdata van bestaande stems en schrijft geen tegoed af.
Verzoekparameters
Headers
| Parameter | Type | Verplicht | Opmerkingen |
|---|---|---|---|
| Authorization | string | ja | Bearer YOUR_API_KEY |
| Content-Type | string | ja | application/json |
Body-parameters
| Parameter | Type | Verplicht | Standaard | Opmerkingen |
|---|---|---|---|---|
| song_id | string | ja | - | De ID van één enkele track na scheiding (elke clip id die /api/music/separate teruggeeft) |
| kind | string | ja | - | Vast op midi |
Voorbeeldverzoek
curl -X POST https://www.suno-api.io/api/music/download-file \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"song_id": "stem_clip_id",
"kind": "midi"
}' \
--output track.mid
Antwoord
De antwoordbody is de binaire inhoud van het MIDI-bestand, niet JSON.
| Antwoordheader | Waarde |
|---|---|
| Content-Type | audio/midi |
| Content-Disposition | attachment; filename="<titel van het nummer>.mid" |
Een downloadadres ophalen
Hebt u eerst het adres nodig en wilt u daarna downloaden (bijvoorbeeld om meerdere bestanden te verpakken), roep dan eerst dit aan:
curl -X POST https://www.suno-api.io/api/music/download-url \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"song_id":"stem_clip_id","kind":"midi"}'
{
"success": true,
"message": "",
"data": {
"song_id": "stem_clip_id",
"kind": "midi",
"url": "https://www.suno-api.io/api/music/download?song_id=stem_clip_id&kind=midi"
}
}
Dat adres vereist ook de Authorization-header; zonder API-sleutel geeft het 401.
Over het MIDI-bestand
| Item | Waarde | Opmerkingen |
|---|---|---|
| Bestandsformaat | SMF format 1 | 1 Tempotrack + 1 track per instrument |
| Tijdresolutie | 480 PPQ | 480 ticks per tel |
| Tempo | 120 BPM | Suno geeft alleen seconden, geen BPM, dus wordt een vast tempo gebruikt om de tijdlijn te schrijven |
| Tijdlijn | 1 seconde = 960 ticks |
Komt één op één overeen met de seconden die het platform teruggeeft; wijzig het tempo in de DAW indien nodig |
| Velocity | 0–127 | Het platform levert floats van 0–1; het endpoint heeft ze al omgerekend met ×127 |
| Drums | MIDI-kanaal 10 | Tracks die het platform als drums markeert, komen automatisch op het percussiekanaal |
Opmerkingen
- Alleen geldig voor tracks die al stems hebben:
song_idmoet een track-ID zijn die/api/music/separateteruggeeft, niet de ID van het oorspronkelijke nummer. - Een stem zonder noten is een normaal resultaat: sommige tracks (bijvoorbeeld FX) hebben geen omzetbare noten; in dat geval wordt een geldig MIDI-bestand zonder noten teruggegeven in plaats van een fout.
- MIDI bevat alleen nootinformatie: volume, pan en effecten maken geen deel uit van de MIDI; stel het timbre zelf in de DAW in.
- Vraag elke track apart op: één aanroep geeft de
.midvan één track; voor meerdere tracks roept u ze elk aan of gebruikt u de batch-download van de Create UI.
Een API-sleutel aanvragen
Maak na je registratie een API-sleutel aan in de console. Elke generatie kost ¥0,6 en levert 2 nummers op, downloads zijn onbeperkt en een telefoonnummer is niet nodig.
API-sleutel ophalen Terug naar overzicht