Sozdai LogoDocs
ドキュメント/音楽/テキストから画像

Suno Music· テキストから画像

テキストから画像
POSThttps://api.foxwire.ai/v1/media/generations

#タスクを送信

メディア生成は非同期です。待たずにすぐタスクIDを取得できます。

bash
curl https://api.foxwire.ai/v1/media/generations \
  -H "Authorization: Bearer $CORRY_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "model": "suno-music", "prompt": "calm ambient piano with soft melodies", "instrumental": true }'
# → { "id": "cmus7q0x9000108l3f5g2abcd", "status": "queued" }

#リクエストパラメータ

パラメータ種類必須デフォルト説明
versionstringいいえV5_5
Suno engine version (the model is a parameter, not a separate endpoint). Default V5_5 (latest).
選択肢: V5_5, V5, V4_5PLUS, V4_5, V4_5ALL, V4
promptstringはい
Non-custom mode (default): a short idea, lyrics auto-written — max 500 chars. Custom mode (customMode: true): used as the exact lyrics — max 3000 chars on V4, 5000 on every other version.
customModebooleanいいえfalse
Advanced control. When true, style+title required (and prompt as lyrics unless instrumental).
instrumentalbooleanいいえfalse
Generate instrumental (no vocals).
stylestringいいえ
Genre/mood (required in custom mode). Max 200 chars on V4, 1000 on every other version. e.g. Synthwave, Jazz, Lo-fi.
titlestringいいえ
Track title (required in custom mode, max 80 chars).
negativeTagsstringいいえ
Styles/traits to avoid. e.g. Heavy Metal.
vocalGenderstringいいえ
Preferred vocal gender (custom mode only; best-effort).
選択肢: m, f
styleWeightnumberいいえ
How strongly to follow the style. Range 0–1, up to 2 decimals.
weirdnessConstraintnumberいいえ
Experimental/creative deviation. Range 0–1, up to 2 decimals.
audioWeightnumberいいえ
Balance weight for audio features vs. other factors. Range 0–1, up to 2 decimals.
personaIdstringいいえ
Apply a Persona/Voice to the generation. Custom mode only.
personaModelstringいいえ
Persona type. Only available on V5 and V5_5.
選択肢: style_persona, voice_persona
callback_urlstringいいえ
Optional public http(s) URL. We POST the task result here the moment generation finishes (success or failure).

#Poll for the result

Generation runs asynchronously — the submit call returns immediately with a task id. Poll this endpoint with that id every few seconds until status becomes succeeded (result ready) or a terminal error (failed / timeout).

GEThttps://api.foxwire.ai/v1/media/generations/{id}
bash
# take the id from the submit response, then poll every ~3s
curl https://api.foxwire.ai/v1/media/generations/cmus7q0x9000108l3f5g2abcd \
  -H "Authorization: Bearer $CORRY_KEY"
# repeat until "status" is "succeeded" (or "failed" / "timeout")

#レスポンス例

送信時

json
{
  "id": "cmus7q0x9000108l3f5g2abcd",
  "status": "queued",
  "type": "music",
  "model": "suno-music"
}

成功時(ポーリング後)

json
{
  "id": "cmus7q0x9000108l3f5g2abcd",
  "status": "succeeded",
  "type": "music",
  "model": "suno-music",
  "tracks": [
    {
      "id": "cmus7q9p1000208l3h6j3efgh",
      "title": "Paper Sunburn",
      "tags": "pop, upbeat, bright synth, punchy",
      "lyrics": "[Verse 1]\nCity lights on the dashboard glow\n...",
      "duration": 139.92,
      "streamUrl": "https://api.foxwire.ai/v1/media/stream/cmus7q9p1000208l3h6j3efgh/<token>",
      "audioUrl": "https://cdn.sozdai.ai/music/1782583687607-75e9dd8e8b89.mp3",
      "imageUrl": "https://cdn.sozdai.ai/music/cover/1782583641794-896ad6ebb572.jpeg"
    },
    {
      "id": "cmus7qam2000308l3k7m4ijkl",
      "title": "Paper Sunburn",
      "tags": "pop, upbeat, bright synth, punchy",
      "lyrics": "[Verse 1]\nCity lights on the dashboard glow\n...",
      "duration": 176.88,
      "streamUrl": "https://api.foxwire.ai/v1/media/stream/cmus7qam2000308l3k7m4ijkl/<token>",
      "audioUrl": "https://cdn.sozdai.ai/music/1782583693241-bfbcad7cf9d8.mp3",
      "imageUrl": "https://cdn.sozdai.ai/music/cover/1782583648301-bec46f245a73.jpeg"
    }
  ],
  "cost": "0.1200",
  "currency": "USD"
}

レスポンスのフィールド

フィールド種類説明
statusstringタスクのステータス:queued / submitted / succeeded / failed / timeout。
typestringメディアの種類:image / video / music。
modelstringリクエストしたモデル。
tracksarrayGenerated tracks (usually 2). Each track object has the fields below.
errorstringエラーメッセージ。タスクが失敗したときに存在します。
coststringこのタスクの請求額 — USD 文字列(例:"0.1200")。currency フィールドを参照してください。
currencystringCurrency of cost — always "USD".

Track object

フィールド種類説明
idstringTrack id (used in streamUrl).
titlestringTrack title.
tagsstringStyle tags, comma-separated.
lyricsstringLyrics; "[Instrumental]" for instrumental tracks.
durationnumberDuration in seconds.
streamUrlstringPlay immediately while generating; redirects to the CDN file once stored.
audioUrlstringFinal mp3 on our CDN (present once ready).
imageUrlstringCover image on our CDN.

Listen while it generates

Tracks (with streamUrl, cover and lyrics) appear ~20–30s in, before the full song is ready — poll the task and start playing streamUrl right away. audioUrl (the final mp3 on our CDN) fills in when generation completes.