POST
/
suno
/
music
Music Generation
curl --request POST \
  --url https://api.unifically.com/suno/music \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "mv": "<string>",
  "custom": true,
  "gpt_description_prompt": "<string>",
  "prompt": "<string>",
  "make_instrumental": true,
  "title": "<string>",
  "negative_tags": "<string>",
  "advanced_settings": {
    "style_weight": 123,
    "weirdness_constraint": 123,
    "vocal_gender": "<string>"
  }
}
'
Generate music using simple or custom mode in a unified endpoint.

Pricing

For current pricing, see the Pricing page.

Simple Mode Example

curl -X POST "https://api.unifically.com/suno/music" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "mv": "chirp-bluejay",
    "custom": false,
    "gpt_description_prompt": "[Verse 1]\nHello world\n[Chorus]\nThis is my song",
    "make_instrumental": true,
    "title": "My First Song"
  }'

Custom Mode Example

curl -X POST "https://api.unifically.com/suno/music" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "mv": "chirp-bluejay",
    "custom": true,
    "make_instrumental": true,
    "prompt": "An upbeat pop song with electronic elements",
    "title": "Custom Song",
    "negative_tags": "metal, jazz",
    "advanced_settings": {
      "style_weight": 0.7,
      "weirdness_constraint": 0.3,
      "vocal_gender": "f"
    }
  }'

Parameters

mv
string
required
Model version (see Available Models)
custom
boolean
required
Use custom mode (true) or simple mode (false)
gpt_description_prompt
string
Description prompt for simple mode
prompt
string
Detailed prompt for custom mode
make_instrumental
boolean
Generate instrumental version
title
string
Title for the generated song
negative_tags
string
Genres/styles to avoid (custom mode only)
advanced_settings
object
Advanced controls for custom mode
style_weight
number
0.0-1.0: Style adherence
weirdness_constraint
number
0.0-1.0: Experimental level
vocal_gender
string
“m” or “f”

Response

{
  "code": 200,
  "data": {
    "task_id": "68c911ac-c8f4-4a4f-b7c4-eb6fa4f8ae92",
    "clips": [
      {
        "status": "submitted",
        "title": "",
        "id": "5fa5430f-df6f-40e5-b19a-59a9244977b9",
        "major_model_version": "v4.5+",
        "model_name": "chirp-bluejay",
        "prompt": "",
        "gpt_description_prompt": "Hip-hop beats with 808 bass",
        "created_at": "2025-10-13T21:11:41.114Z"
      },
      {
        "status": "submitted",
        "title": "",
        "id": "dce3b5e9-7460-49ca-b06e-3e7b09f87b73",
        "major_model_version": "v4.5+",
        "model_name": "chirp-bluejay",
        "prompt": "",
        "gpt_description_prompt": "Hip-hop beats with 808 bass",
        "created_at": "2025-10-13T21:11:41.114Z"
      }
    ],
    "error": {}
  }
}
Use the task_id to get the completed audio using the Get Feed Info endpoint.