Music API
Render music from code
The MAP Audio Music API runs PAM's sound engine on our servers. Send a JSON request and get back audio and MIDI files: loops, stems, variations and DJ mixes rendered from PAM's factory presets, plus drum hits and MIDI patterns. No AI model makes the audio, and preset renders return their seed, so the same request with that seed plays back the same.
Already invited?
Invite-only while in preview. Invited accounts start on the free plan: 30 render-minutes a month.
What you can make
Loops at any length
A factory preset rendered for a number of bars or seconds, up to five minutes, as WAV, FLAC or MP3.
/v1/rendersVariations and seed batches
A preset's variation slots, a batch of seeds, a morph toward another preset or a blend of several, in one job.
variationsStems
A file per cell beside the master, in the render's format. Stems use no render-minutes.
stems: trueCutdowns and DJ sets
Fit a preset to an exact length across its variations, or mix presets into a DJ set with PAM's transitions.
/v1/arrangements/v1/dj/setDrum hits and MIDI
Drum hits from PAM's drum synth engines, and seeded genre patterns with an optional MIDI file. Neither uses render-minutes.
/v1/synth/drum/v1/pattern/generateMeasure and master
Loudness and peaks (BS.1770), or PAM's master chain, on files the API rendered.
/v1/audio/analyze/v1/audio/master
Built for agents
Everything an agent needs to use the API on its own: an OpenAPI document, Markdown docs, an MCP server at https://api.map.audio/mcp and an installable skill.
npx skills add https://map.audio --skill map-music-apiOne request
With Prefer: wait=30 the API holds its answer until the render finishes, for up to 30 seconds; a longer render answers 202 with the job to poll. Read the docs
curl -sS https://api.map.audio/v1/renders \
-H "Authorization: Bearer $MAP_API_KEY" -H "Content-Type: application/json" \
-H "Prefer: wait=30" \
-d '{"source":{"preset":"pam:factory/313-disco"},"bars":8,"seed":42}'Plans for invited accounts
Invited accounts start on the free plan. Paid plans raise the monthly allowance, how many renders run at once and how long files are kept; bought render-minutes top up any plan at $0.03 each.
| Free$0a month | Creator$12a month | Pro$39a month | App$299a month | |
|---|---|---|---|---|
| Render-minutes a month | 30 | 400 | 1,500 | 20,000 |
| Audio a month, up to | 30 minutes | 6.7 hours | 25 hours | 333.3 hours |
| Renders at a time | 2 | 2 | 5 | 20 |
| Files kept | 7 days | 30 days | 90 days | 30 days |
- One render-minute is one minute of rendered audio. Each master file is charged what it rendered, at least 6 seconds. Stems are not charged.
- Allowances reset on the first of each month (UTC). A plan bought mid-month gets the whole month's allowance at once.
- Bought render-minutes last 1 year and top up any plan. Jobs use the monthly allowance first, then bought minutes, soonest expiry first.
- A job holds its estimate while it runs and settles at what it rendered. A failed or cancelled render costs nothing.
- Prices are in US dollars before tax. Stripe adds any tax at checkout. Cancel a plan in the billing portal and it runs to the end of the period you paid for.
Request access
Tell us what you are building. Sign in with your map.audio account (a new email creates one), add a line about your project, and we email you when your access is ready.