---
title: "download"
method: POST
path: "/api/v1/producer/download"
tags: ["producer"]
---

# download

`POST /api/v1/producer/download`

## Request

- Base URL: `https://api.musicapi.ai`
- URL: `https://api.musicapi.ai/api/v1/producer/download`
- Auth: HTTP bearer

Cost: 2 credits per download.

Auto-refund: If the upstream download fails, the 2-credit charge is automatically refunded — no action needed on your side.

The download runs asynchronously — poll the returned task_id via GET `/api/v1/producer/task/{task_id}` to retrieve the final `audio_url`.

## Request body

- object
  - `clip_id` string, required: song id
  - `format` 'mp3' | 'wav', required: music format, mp3/wav
  - `webhook_url` string: Optional. HTTPS URL to receive a notification when the download completes or fails.
  - `webhook_secret` string: Optional. Secret for signing webhook payloads with HMAC-SHA256. Only used when webhook_url is set.

## Response `200`

- object
  - `message` string, required
  - `task_id` string, required

---

[API](https://skmtc.dev/musicapi/apis/musicapi-docs-suno-style-ai-music-generation-api.md) - [All operations](https://skmtc.dev/musicapi/apis/musicapi-docs-suno-style-ai-music-generation-api/llms.txt) - [OpenAPI document](https://skmtc.dev/musicapi/apis/musicapi-docs-suno-style-ai-music-generation-api/revisions/f94a2c7ed4a1?raw)
