FlowMusic / INFORMATION
FlowMusic Downloader API
This API resolves supported public FlowMusic, Producer.ai and Riffusion song pages into temporary download sessions. It is this downloader's API, not an official FlowMusic creation API. It does not generate songs, authenticate to a platform account or expose private libraries.
Resolve a link
POST /api/resolve
Content-Type: application/json
{ "url": "https://www.flowmusic.app/song/…" }The response contains a temporary session ID, title, source URL, preview route and an array of formats. Sessions expire after ten minutes.
Download a source
GET /api/download?id=SESSION_ID&format=originalSupports a single byte Range request. Use the same domain that created the session. Public GET endpoint: /api/v1/resolve?url=ENCODED_URL, limited to 60 requests per hour per IP.
Prepare a conversion
POST /api/convert
{ "id": "SESSION_ID", "format": "wav" }
GET /api/progress/JOB_IDThe progress endpoint emits server-sent events. A done event includes a temporary download URL. A 503 BUSY response means another conversion is active. Files must be under 200 MB and 10 minutes.
Check several links
POST /api/batch
{ "urls": ["PUBLIC_SHARE_URL"] }Up to ten links. Each result contains either a download session or an individual error. There is no API key and fair-use limits apply.
Use the formats returned for each song
Resolve a supported individual-song URL, then use the returned format keys and notes. The original key refers to the actual public source; MP3, WAV and M4A may appear as conversions when they differ from that source. Lyrics appears only when usable public text is present.
Do not manufacture a download address from a title or assume that every song offers every format. Result IDs belong to this site's session and expire after ten minutes. A stale ID requires a new resolve request using the original song URL.
Plan for limits and temporary failures
Use a modest retry delay for busy, rate-limited or temporary upstream failures. An unsupported URL or inaccessible song needs a corrected input or authorized source, not an aggressive retry loop. Prepared job downloads also expire after ten minutes.
- The public v1 resolver allows 60 requests per hour per IP; the UI resolver allows 30 per ten minutes.
- Conversion requests are limited to eight per ten minutes and one active conversion across the service.
- Batch input accepts up to ten URLs. ZIP source data, source files and converted outputs have 200 MB limits.
- Reported durations above ten minutes are rejected; conversions process at most ten minutes.