No output yet. Submit the form to generate content.
Transparent pricing with no hidden fees. Pay as you go.
| Rule & Modality | Channel | Credits | Price (USD) | Official / Reference Price | Daily Savings |
|---|---|---|---|---|---|
Suno midi musicSuno | Starter | 1per run | $0.005 | - | - |
Complete guide to using Suno
Convert separated audio tracks from completed suno/vocal-separation tasks into structured MIDI instrument and note data. The suno/midi API is built for developers who need reliable MIDI extraction workflows for music production, remixing, arrangement analysis, and creative audio tools.

The suno/midi API converts results from a completed suno/vocal-separation task into structured MIDI data. It does not generate MIDI directly from an arbitrary audio URL. Instead, you pass the ApiPass task ID (task_xxx) of a completed separation task, optionally include an audioId for a specific separated track, and then query the ApiPass task until MIDI instruments and note data are ready.
Convert separated vocal or instrument tracks into structured MIDI data that can be used in sequencers, notation tools, music analysis systems, and production workflows.
Use input.audioId to convert a specific separated track, or omit audioId to generate MIDI for all separated tracks from the source separation task.
Create a MIDI conversion task with /api/v1/jobs/createTask, store the returned ApiPass task ID, and query /api/v1/jobs/recordInfo until the task reaches success or fail.
Successful tasks return normalized MIDI data through resultJson.data.instruments. Each instrument can include note arrays with pitch, start, end, and velocity values when returned by the upstream processor.
The API is designed for completed suno/vocal-separation tasks. Use the ApiPass taskId of the completed separation task as input.taskId and, when needed, copy the target track ID from originData[].id into input.audioId.
ApiPass keeps tasks in generating state while MIDI data is still being prepared, even if an upstream temporary success status appears before instruments are populated. Add callBackUrl to receive completion notifications automatically.
Build workflows that turn separated stems into MIDI notes for editing, arranging, reharmonizing, or rebuilding parts inside a digital audio workstation.
Extract MIDI-like structure from separated instrument tracks so users can modify melodies, recreate arrangements, or generate new versions based on existing audio material.
Parse instrument and note data to power pitch analysis, timing visualization, educational tools, and searchable music metadata systems.
The most important integration detail is using the correct task ID at each step.
input.taskId is the ApiPass task ID (task_xxx) returned by createTask for the completed suno/vocal-separation task; ApiPass maps it to the provider task ID automatically. The new task_xxx value returned after creating the MIDI task is only used for querying /api/v1/jobs/recordInfo and must not be used as the source taskId.
input.audioId is optional. Provide it when you want to convert one separated track, usually copied from originData[].id. Leave it empty when you want the processor to convert all separated tracks from the source task.
The upstream processor may temporarily report success before MIDI instruments are available. ApiPass keeps the task in generating state and continues polling until resultJson.data.instruments is ready or the task fails.
Use the channel parameter to choose auto, starter, regular, or official. The default auto channel lets ApiPass allocate requests across available providers based on real-time pricing and stability.
The source HTML indicates MIDI generation is a lightweight paid task in the music API workflow. Check the current ApiPass dashboard for exact credit consumption before production usage.
Parameter validation failures do not call the upstream provider and do not create an upstream MIDI task. Validate taskId and audioId before submitting production requests.
Run a suno/vocal-separation task first and wait until it completes successfully. The MIDI API requires the ApiPass task ID (task_xxx) of the completed separation task as input.taskId.
Call POST /api/v1/jobs/createTask with model set to suno/midi. Include input.taskId and optionally input.audioId when you want to convert a specific separated audio track.
Store the ApiPass task ID returned by the create endpoint and query GET /api/v1/jobs/recordInfo?taskId=task_xxxxxxxxxxxxxxxx. If you provided callBackUrl, ApiPass posts the same result structure to your endpoint when the task completes.
The API page shows the parameter schema, but Suno also has several business-specific mode combinations and callback rules that are easy to miss.
All APIs require authentication via Bearer Token.
Authorization: Bearer
Submit a Suno MIDI conversion task using a completed suno/vocal-separation ApiPass task as input.
The API accepts a JSON payload with the following structure:
1{
2 "model": "suno/midi",
3 "callBackUrl": "string (optional)",
4 "channel": "auto",
5 "input": {
6 "taskId": "string",
7 "audioId": "string (optional)"
8 }
9}modelRequiredstringThe public model name. This value is fixed as suno/midi.
"suno/midi"
callBackUrlOptionalstringCallback URL for task completion notifications. If omitted, no callback will be sent.
"https://your-domain.com/api/callback"
channelOptionalstringYou may specify the corresponding provider within APIPASS via the channel parameter. The default channel is auto; APIPASS automatically allocates tasks across available providers based on real-time pricing and stability metrics. starter is ultra-low-cost with limited quotas and weaker stability. regular is the standard option and is much cheaper than official APIs with moderate stability. official uses the model native API with high stability, fast task execution, and official pricing.
The default value for the channel parameter is auto. When enabled, APIPASS automatically allocates tasks across available providers based on real-time pricing and stability metrics to balance minimal cost and reliable performance. starter is ultra-low-cost with limited quotas and weaker stability; regular is standard and much cheaper than official APIs with moderate stability; official uses the model native API with high stability, fast task execution, and official pricing.
Available options:
auto
The input object contains the MIDI conversion parameters.
input.taskIdRequiredstringCompleted suno/vocal-separation ApiPass task ID to convert into MIDI data.
Use the ApiPass task ID (task_xxx) returned by createTask for the completed suno/vocal-separation task; ApiPass maps it to the provider task ID automatically. Do not use the new task ID returned by this MIDI request.
"task_yyyyyyyyyyyyyyyy"
input.audioIdOptionalstringSeparated audio track ID to convert. If omitted, ApiPass generates MIDI for all separated tracks from the source task.
Usually copied from originData[].id in the vocal separation result. Omit this field to generate MIDI for all separated audio tracks.
"piano-stem-audio-id"
1curl --request POST \
2 --url "https://api.apipass.dev/api/v1/jobs/createTask" \
3 --header "Authorization: Bearer ${APIPASS_API_KEY}" \
4 --header "Content-Type: application/json" \
5 --data '{
6 "model": "suno/midi",
7 "callBackUrl": "https://your-domain.com/api/callback",
8 "channel": "auto",
9 "input": {
10 "taskId": "task_yyyyyyyyyyyyyyyy",
11 "audioId": "piano-stem-audio-id"
12 }
13 }'1{
2 "code": 200,
3 "message": "success",
4 "data": {
5 "taskId": "task_xxxxxxxxxxxxxxxx"
6 }
7}codeStatus code, 200 for success, others for failure.
messageResponse message, or an error description when the request fails.
data.taskIdApiPass task ID for querying the status and result of the current MIDI conversion task.

MiniMax
MiniMax
MiniMax Music 1.5 AI music generation model, supports lyrics and style prompt to generate music
Starting from
0 credits
Starting from
0 credits