Skip to main content
AIの応用が広がるにつれて、さまざまなAIプログラムが徐々に普及しています。AIは人々の仕事や生活のあらゆる面に深く浸透しています。そして、AIが関与する業界もますます増えています。最初のライティングから、医療教育、そして現在の音楽へと至ります。 Sunoは、専門的で高品質なAIの歌と音楽創作プラットフォームで、ユーザーは簡単なテキストプロンプトを入力するだけで、ジャンルスタイルや歌詞に基づいてボーカル付きの曲を生成できます。このAI音楽生成器は、Meta、TikTok、Kenshoなどの著名なテクノロジー企業のチームメンバーによって開発されており、楽器やツールを必要とせず、誰でも素晴らしい音楽を創造できることを目指しています。 以下はモデル更新の進捗です:
上表の lyricstyle 制限はカスタムモード(customtrue)下の上限です。非カスタムのインスピレーションモード(customfalse)では、prompt のみを記入し、その長さの上限は500文字(各モデル共通)です。
Sunoは現在最新の chirp-v5-5 モデルをサポートしています。最新バージョンを呼び出す際は、model パラメータを chirp-v5-5 に設定するだけです;chirp-v5 およびそれ以前のバージョンも引き続き使用可能です。 しかし、Suno公式はAPIを提供していません。AceDataCloudはSunoのAPIを提供しており、公式に接続を模倣し、希望する音楽を簡単かつ迅速に生成できます。

申請と使用

Suno Audios Generation APIを使用するには、まず Ace Data Cloud コントロールセンター にアクセスしてAPIトークンを取得し、保管してください。 まだログインまたは登録していない場合は、自動的にログインページにリダイレクトされ、登録とログインを促されます。完了後、現在のページに自動的に戻ります。 1つのAPIトークンでプラットフォームのすべてのサービスを呼び出すことができ、各サービスごとに個別に申請する必要はありません。 初回申請時には無料のクレジットが付与され、無料で体験できます;クレジットが不足した場合は、コントロールセンター で一般残高をチャージできます。
📘 完全なドキュメント:Suno Audios Generation API →

基本使用

どんな曲を作りたいか、任意のテキストを入力できます。例えば、クリスマスに関する曲を生成したい場合は、a song for Christmas と入力できます。以下のように:

ここでは、リクエストヘッダーを設定しました。内容は以下の通りです:
  • accept:どのような形式のレスポンスを受け取りたいか、ここでは application/json、つまりJSON形式を記入します。
  • authorization:APIを呼び出すためのキーで、申請後に直接選択できます。
さらに、リクエストボディを設定しました。
  • action:今回の音楽生成タスクの行動、デフォルトは generate、主に含まれるのは:extendupload_extendcoverupload_coverreplace_sectionreplace_sectionconcatstemsall_stemsremaster
  • prompt:Suno公式のインスピレーションモードのヒントワード(customfalse の場合に有効)、最大500文字。
  • model:今回の音楽生成タスクのモデル、デフォルトは chirp-v4、主に含まれるのは:chirp-v3chirp-v4chirp-v3-5chirp-v4-5chirp-v4-5-pluschirp-v5chirp-v5-5
  • lyric:Suno公式のカスタムモードの歌詞内容。chirp-v3-5chirp-v4 は最大3000文字;chirp-v4-5 及びそれ以上(含む chirp-v5chirp-v5-5)は最大5000文字。
  • custom:カスタムモードを使用するかどうか、デフォルトは: false
  • instrumental:Suno公式のインスピレーションモードの純音楽オプション。
  • title:Suno公式のカスタムモードの音楽タイトル。chirp-v3-5chirp-v4 は最大80文字;chirp-v4-5 及びそれ以上は最大100文字。
  • style:Suno公式のカスタムモード音楽スタイル。chirp-v3-5chirp-v4 は最大200文字;chirp-v4-5 及びそれ以上(含む chirp-v5chirp-v5-5)は最大1000文字。
  • negative_tags:カスタムモード(customtrue の場合)で生成結果から除外したい音楽スタイルやジャンル。
  • audio_weight:アップロードした参考音声の比率、範囲は0-1、数値が大きいほど参考音声に依存する。
  • audio_id:参考音楽のID。
  • overpainting_start/overpainting_end:既存の純音楽にボーカルを追加する開始・終了時間、単位は秒。
  • underpainting_start/underpainting_end:アカペラに伴奏を加える開始・終了時間、単位は秒。
  • persona_id:アーティストの曲のID。
  • continue_at:続きの生成境界、単位は秒。例えば、213.5は3分33.5秒から後続の部分を生成することを示す。lyricstyle は境界以降の新しい内容を導くが、境界以前の元音声の歌詞や演唱を置き換えることはない。
  • style_influence:カスタムモードの「Style Influence」高度なパラメータ、範囲は0-1、数値が大きいほど選択したスタイルに近づく。
  • replace_section_end:置き換えセクションの最終時間。
  • replace_section_start:置き換えセクションの開始時間。
  • vocal_gender:男女声の好みを制御、女性声は f、男性声は m、4.5以上のモデルで有効;好みの項目であり、厳密に遵守されることは保証されない。
  • weirdness:カスタムモードの「Weirdness」高度なパラメータ、範囲は0-1、数値が大きいほど創造的で実験的。
  • duration:期待する曲の長さ、単位は秒、整数でなければならず、範囲は10から360。これはカスタムモード(customtrue の場合)の曲生成に使用される。これは傾向を示すヒントであり、厳密な制約ではない:モデルはこれを参考にするが、達成を保証するものではなく、実際の成果物の長さは応答の duration フィールドに基づく、通常は期待値より短い。
  • lyric_prompt:歌詞を生成するためのプロンプト、customtruelyric が提供されていない場合にのみ有効。
  • callback_url:結果をコールバックする必要があるURL。
  • async:オプション、true に設定するとインターフェースは即座に task_id を返し、callback_url を提供する必要がなく、その後対応するタスククエリインターフェースを通じて結果をポーリングして取得する。
生成されたコードは以下の通りです:

「Try」ボタンをクリックしてAPIを直接テストできます。1-2分待つと、結果は以下の通りです:
この時点で、私たちは2曲の内容を得ました。タイトル、プレビュー画像、歌詞、音声、動画などの内容が含まれています。 フィールドの説明は以下の通りです:
  • success:生成が成功したかどうか、成功した場合は true、そうでなければ false
  • data:生成された曲の詳細情報を含むリスト。
    • state:曲の生成状態、主に4種類が含まれます。具体的には以下の通り:
      • succeeded:生成成功
      • pending:キュー中
      • running:実行中
      • error:失敗
    • id:曲のID
    • title:曲のタイトル
    • image_url:曲のカバー画像
    • lyric:曲の歌詞
    • audio_url:曲の音声ファイル、開くとmp3音声になります。
    • video_url:曲の動画ファイル、開くとmp4動画になります。
    • created_at:作成日時
    • model:使用されたモデル、一般的には最新のv3モデル
    • style:スタイル

カスタム生成

歌詞をカスタム生成したい場合は、歌詞を入力できます: この時、 lyric フィールドには以下のような内容を渡すことができます:
注意:ここでの歌詞中の \n は改行文字です。歌詞を生成する方法がわからない場合は、AceDataCloudが提供する歌詞生成APIを使用して、プロンプトを通じて歌詞を生成できます。APIは Suno Lyrics Generation API です。
次に、歌詞、タイトル、スタイルに基づいて曲をカスタム生成するために、以下の内容を指定できます:
  • lyric:歌詞テキスト
  • custom: true と記入し、カスタム生成を示します。このパラメータはデフォルトでfalseで、プロンプト生成を示します。
  • title:曲のタイトル。
  • style:曲のスタイル、任意。
記入例は以下の通りです:

記入が完了すると、自動的に以下のコードが生成されます:

対応するコード:
テストが許可され、生成された効果は似たようなものです。

カスタム歌手スタイル生成機能

もし歌手のスタイルを使用して曲を生成したい場合、まずは上記の基本的な使用法を通じて曲を生成し、最後にこの曲を歌手のスタイルに設定する必要があります。そのためには、Suno Persona APIにアクセスし、公式に生成された音楽ID audio_id を使用して歌手スタイルのIDパラメータ persona_id を生成する必要があります。具体的なパラメータは以下の図の通りです:

記入が完了した後、自動生成されたコードは以下の通りです:

対応するPythonコード:
実行をクリックすると、以下のような結果が得られます:
上記の audio_idpersona_id をそれぞれ 97efc9f4-0e8d-4b3e-88df-14568fa1b11fe0d7319e-aa2a-44cb-b00a-916218d7cb0b として、今回のサンプルデータとします。次に、パラメータ actionartist_consistency に設定します(新しい歌手スタイルのPersona-v2-voxの場合、actionartist_consistency_vox に設定する必要があります)。続けて、曲を生成するためのIDと歌手スタイルIDを入力し、以下のように記入します:

記入が完了した後、自動生成されたコードは以下の通りです:

対応するPythonコード:
実行をクリックすると、以下のような結果が得られます:
結果の内容が上記と一致していることがわかります。これにより、歌手のスタイルを使用して曲を生成する機能が実現されました。

続けて生成する機能

既に生成されたSunoの曲を続けて生成したい場合、パラメータ actionextend に設定し、続けて生成する曲のIDを入力します。曲のIDは基本的な使用法に基づいて取得され、上記からこの時点で曲のIDは次のようになります:
注意:ここでの歌詞中の id は生成後の曲のIDです。曲を生成する方法がわからない場合は、上記の基本的な使用法を参考にしてください。
自分がアップロードした曲を続けて生成したい場合、パラメータ actionupload_extend に設定し、続けて生成するカスタムアップロードの曲IDを入力します。曲のIDはSuno Upload Generation APIを使用して取得します。以下の図の通りです:

次に、続きの歌詞のフラグメントを記入し、スタイルを指定する必要があります:
  • lyric:continue_at の後に新しく生成されるフラグメントの歌詞を導くためだけに使用され、元の音声のその時間点以前の歌詞は置き換えられません。
  • custom:true に設定するとカスタム生成を意味し、このパラメータはデフォルトで false で、prompt による生成を意味します。
  • style:続きのフラグメントの曲のスタイル、任意で記入。
  • continue_at:続きの境界、単位は秒です。例えば、213.5は3分33.5秒から続きのフラグメントを生成することを示します。
extend は既存の曲を続けて創作するためのものであり、全体の曲の歌詞を置き換えるためのものではありません。全体の曲を最初から新しい歌詞で生成したい場合は、generate を使用して再生成してください。既存の曲を参考にして再演繹したい場合は、cover を使用してください。新しい歌詞全体を渡すと、continue_at 以前の元の歌詞は置き換えられません。
記入のサンプルは以下の通りです:

記入が完了した後、自動生成されたコードは以下の通りです:

以下は、実際の歴史的な呼び出しスナップショットであり、continue_at は2秒であるため、最初の2秒のみが続きの境界の前の元の内容に属します。実際に曲の終わりに近い続きの部分を書く際には、この値を期待する続きの開始秒数に設定し、lyric には境界の後に歌う新しい段落のみを提供する必要があります。 対応するPythonコード:
実行すると、次のような結果が得られます:
結果の中で、lyric は今回の続きのタスクで使用された歌詞テキストを返します。このフィールドは、完全な音声の逐語的な書き起こしではありません。extend の場合、continue_at 以前の元の音声は元の歌詞を使用し、新しい歌詞は続きの部分を導くためだけに使用されます。

完全な曲を取得する

現在のモデルの extend 結果には、通常、continue_at 以前の元の音声と境界の後の新しい内容が含まれています。返された音声の実際の長さと内容に基づいて、すでに完全な曲であるかどうかを判断してください。返されたのが独立した続きの部分である場合、または複数の続きの履歴を明示的に1曲に統合する必要がある場合は、結合機能を使用します:
  • action:内容は concat
  • audio_id:最後の続きの部分のID。
例えば、拡張された曲のIDが:0a1e1b10-c36a-41c9-9bfb-b26d9d25db98 の場合、パラメータを次のように設定できます:
他のパラメータはそのままで、返されるのは1曲の完全な曲であり、すべての曲の部分の結合結果ですが、結果は1曲のみです。例は以下の通りです:

音楽翻版

元の曲に基づいて曲を生成した後、返された曲のスタイルがあまり適切でない場合があります。元の生成された曲(カスタムアップロードされた音楽もサポート)を翻版するには、音楽翻版方法を使用する必要があります。以下の内容を指定できます:
  • action:内容は cover、カスタムアップロードされた音楽に対して翻版操作を行う場合は、内容を upload_cover と指定する必要があります。
  • audio_id:以前に生成された曲のID。
例えば、元の生成された曲のIDが:0a1e1b10-c36a-41c9-9bfb-b26d9d25db98の場合、パラメータを以下のように設定できます:
他のパラメータはそのままで、返されるのは翻版された曲であり、元の生成された曲の翻版結果となります。以下のような例があります:
生成された結果は上記のように似ており、元の生成された曲の翻版生成プロセスが完了しました。

置き換えセクション

曲を生成した後、曲の特定のセクションを置き換える二次創作を行う必要がある場合、曲のあるセクションを置き換える操作を行うことができます。
⚠️ 注意replace_section_result_mode のデフォルトは full_song:システムは2つの新しく生成された候補をそれぞれ結合し、2つの完全な曲を返します。まだ結合されていない置き換えセクションの候補のみが必要な場合は、明示的に candidates に設定し、候補を選択して 音楽の結合 を呼び出してください。
パラメータの説明は以下の通りです:
  • action:内容は replace_section
  • audio_id:元の曲(置き換えられる元の曲)のID。
  • model: 曲生成モデル。
  • lyric: 置き換え後の完全な歌詞(置き換えられるセクションとその前後の文脈を含み、prompt の内容と一致する)。
  • prompt:置き換えが必要な新しい歌詞のその部分。
  • style:曲のスタイル、任意。
  • replace_section_start:置き換えられるセクションの元の曲における開始時間(秒)。
  • replace_section_end:置き換えられるセクションの元の曲における終了時間(秒)。
  • replace_section_result_mode:返却モード、デフォルトは full_songfull_song はそれぞれ2つの候補を結合して2つの完全な曲を返します;candidates は2つのまだ結合されていない候補セクションを返します。

ステップ1:置き換えセクションタスクを開始する

例えば、元の生成された曲のIDが:18db7ed0-2b8a-41db-91c1-b0781dcca0d4(長さ94.12秒)で、第30秒から第60秒のコーラスを新しい歌詞に置き換えたい場合、パラメータを以下のように設定できます:
デフォルトで2つの候補をそれぞれ2つの候補で接続した完全な曲を返します。replace_section_result_modecandidatesに設定すると、構造は以下の例と一致する2つの未接続の置換セクションが返されます:
candidatesモードでは、返される2つの音声の長さ(45.16秒、33.8秒)は元の曲(94.12秒)よりもはるかに短く、少量の文脈を含む置換セクションであり、完全な曲ではありません。満足のいく候補を選んで手動で接続を続けることができます。デフォルトのfull_songモードでは、2回の接続を完了し、2つの完全な曲を直接返します。

完全な曲を直接返す

2つの候補を比較する必要がない場合は、ステップ1でreplace_section_result_modefull_songに設定します。インターフェースは自動的に最初の候補を選択して接続を完了し、1つの完全な曲を含むdata配列を直接返します。この場合、concatを再度呼び出す必要はなく、費用には自動接続ステップが含まれます。

ステップ2:置換セクションを元の曲に接続する

上記で選択したセクション(例:364f9d8b-ca25-463b-9a5e-d0b7139e2d6a)に対して、音楽接続の方法に従ってconcatタスクを開始します:
返されるのは接続された完全な曲で、以下のような例になります:
この時点で duration は完全な曲の長さ(105.28秒、元の曲の長さに相当)に回復し、audio_url が指し示すのは置き換えが完了した全曲です。これで「生成 → 置き換え部分 → 統合全曲」の二次創作プロセスが完了しました。

声曲分離

曲を生成した後、伴奏と人声を個別に操作する二次創作が必要な場合、純音楽伴奏と清唱人声を分離できます。以下の内容を指定できます:
  • action:内容は stems
  • audio_id:以前生成した曲のID。
例えば、元々生成された曲のIDが:ec13e502-d043-4eb2-92ee-e900c6da69d1の場合、パラメータを以下のように設定できます:
上記のパラメータを使用することで、声曲分離の結果を得ることができ、結果は以下の通りです:
生成された結果は上記のように、元々生成された曲の声曲分離のプロセスが完了しました。

全軌道声曲分離

曲を生成した後、全軌道声曲分離操作を行う必要がある場合、以下の内容を指定できます:
  • action:内容は all_stems
  • audio_id:以前生成した曲のID。
例えば、元々生成された曲のIDが:bdf23a5a-59f5-4103-b452-054a824a7f9fの場合、パラメータを以下のように設定できます:
上記のパラメータを使用することで、全軌道声曲分離の結果を得ることができ、結果は以下の通りです:
生成された結果は上記のように、元の生成された曲の声曲分離プロセスが完了しました。

カスタム生成の高度なパラメータ

公式はカスタムモードで高度なパラメータ weirdness==>Weirdnessstyle_influence==>Style Influenceaudio_weight==>Audio Influenceを使用して生成することを許可しています。対応する公式の例は以下の通りです:

高度なパラメータの範囲はすべて0-1の間で、具体的なパラメータは以下の図の通りです:

記入が完了した後、自動生成されたコードは以下の通りです:

対応するPythonコード:
実行をクリックすると、以下のような結果が得られます:
これにより、高度なパラメータを使用してカスタム曲を生成し、結果は上記のように似ています。

曲の長さを制御する

デフォルトでは生成される曲の長さはモデルが自動的に決定し、通常は30秒から4分の間です。より長いまたは短い作品が必要な場合は、durationパラメータを使用して希望の長さを指定できます。単位は秒で、値は10から360の間の整数です。 このパラメータはカスタムモード(customtrue)の曲生成に使用されます。特に注意すべきは、duration傾向的なヒントであり、厳密な制約ではないことです:モデルはこの値を参考にして創作しますが、達成を保証するものではありません。実際の長さは通常、期待値よりも明らかに短くなることが多く、同じリクエストから返される2曲の長さも数倍異なる可能性があります。完全に同じリクエストでも、複数回提出した場合の長さは大きく異なることがあります。したがって、正確な長さの制御として使用しないでください。ビジネス上、固定の長さが必要な場合は、完成品を受け取った後に自分でカットするか、再試行してください。 対応するPythonコード:
注意すべきは、リクエスト内のduration希望の長さであり、レスポンスdata内の各曲のdurationフィールドはその曲の実際の長さです。両者の名称は同じですが、意味は異なり、実際の長さが希望値に等しいことは保証されません。歌詞の長さは完成品の長さに影響を与える主要な要因の一つであり、より長い作品が必要な場合は、より完全な歌詞を同時に提供することをお勧めします。 インターフェースはdurationに対して追加の検証を行わず、パラメータはそのままモデルに渡されます。現在のモードまたはモデルがサポートしていない値が渡された場合、その値が無視される可能性があります。効果を確認するために、最初に1回リクエストを行ってからバッチ使用することをお勧めします。

Add Insterumental 機能

2025年8月にsunoはAdd Insterumental機能を新たに発表しました。まず、無伴奏の清唱曲をアップロードして、sunoに音楽をつけてもらう必要があります。まず、Suno Upload APIにアクセスして、無伴奏の清唱曲をアップロードします。対応する操作は以下の図の通りです:

次に、アップロード後のaudio_idを記録する必要があります。具体的な結果は以下の図の通りです:

最後に、audio_id:92254cab-3372-4d9e-bce9-cdcfdbc39070を取得し、次のパラメータを記入する必要があります:
  • action:内容为 underpainting
  • underpainting_start:対上传された曲に伴奏を追加する開始時間、デフォルト値は 0。
  • underpainting_end:対上传された曲に伴奏を追加する終了時間、曲の総時間より小さくなければならない。
  • audio_id:アップロードされたアカペラの曲の ID。
  • style:伴奏のスタイル、歌詞は不要な方が良い、結局は声の伴奏だから。
記入が完了した後、自動生成されたコードは以下の通りです:

対応する Python コード:
クリックして実行すると、以下のような結果が得られます:
これで、アップロードされたアカペラの曲に伴奏を追加する操作が完了しました。結果は上記のようになります。

Add Vocals 機能

2025年8月にsunoが新たに追加したAdd Vocals機能では、まず純粋な音楽をアップロードし、sunoに歌詞を作成させ、人声で歌わせる必要があります。まず、Suno Upload APIにアクセスして、アカペラの無伴奏曲をアップロードします。対応する操作は以下の図の通りです:

次に、アップロード後のaudio_idを記録する必要があります。具体的な結果は以下の図の通りです:

最終的に得られたaudio_idは:92254cab-3372-4d9e-bce9-cdcfdbc39070です。次に、以下のパラメータを記入する必要があります:
  • action:内容は overpainting
  • overpainting_start:アップロードされた曲に人声を追加する開始時間、デフォルト値は 0。
  • overpainting_end:アップロードされた曲に人声を追加する終了時間、曲の総時間より小さくなければならない。
  • audio_id:アップロードされたアカペラの曲の ID。
  • custom:このモードでは必ずカスタムモードで歌詞を入力する必要があります。
  • lyric:カスタムモードで入力した歌詞。
  • style:伴奏のスタイル。
記入が完了した後、自動生成されたコードは以下の通りです:

対応する Python コード:
クリックして実行すると、以下のような結果が得られます:
こうして、アップロードされたアカペラの無音楽曲に対して人声を追加する操作が完了しました。結果は上記のように似ています。

Remaster 機能

2025年12月にsunoが新たにリリースしたRemaster機能は、曲を再生成することができ、アカウントを跨いではいけません。また、以下のパラメータを記入する必要があります:
  • action:内容は remaster
  • audio_id:再生成する曲のID。
  • model:v4.5+、v5のみサポート。
  • variation_category:v5以上のバージョンでのみサポートされ、3つの値 high normal subtle のみ。
記入が完了した後、自動的に以下のコードが生成されました:

対応するPythonコード:
実行をクリックすると、以下のような結果が得られることがわかります:
こうして、生成された曲の再生成操作が完了しました。結果は上記のように似ています。

Mashup 混曲生成功能

2025年12月にsunoが新たにリリースしたMashup機能は、2曲の参考曲に基づいて曲を生成することができ、以下のパラメータを記入する必要があります:
  • action:内容は mashup
  • mashup_audio_ids:2曲の参考曲のID。
記入が完了した後、自動的に以下のコードが生成されました:

対応するPythonコード:
クリックして実行すると、以下のような結果が得られます:
これで参考曲の混曲生成操作が完了し、結果は上記のようになります。

サンプル 取样生成歌曲

2025年12月にsunoが新たにサンプル機能を発表しました。この機能は、2曲の参考曲に基づいて曲を生成することができ、次のパラメータを入力する必要があります:
  • action:内容は samples
  • samples_start:サンプリング開始時間。
  • samples_end:サンプリング終了時間。
  • audio_id:サンプリングする参考曲のID。
入力が完了すると、自動的に以下のコードが生成されます:

対応するPythonコード:
クリックして実行すると、以下のような結果が得られます:
こうして、サンプリング生成曲の操作が完了し、結果は上記のようになります。

Inspo インスピレーション創作機能

Suno の新しい Inspo インスピレーション創作機能は、1 から 4 段の参考音声をインスピレーションの源として、新しい音楽を生成します。カバーとは異なり、Inspo は原曲を再現するのではなく、参考音声からスタイルのインスピレーションを抽出し、プロンプトやスタイルタグなどと組み合わせて新しい作品を生成します。使用時には以下のパラメータを記入する必要があります:
  • action:内容は inspo
  • audio_urls:参考音声の URL リスト、1 から 4 の公開アクセス可能な音声アドレスを提供する必要があります。
  • model:使用するモデル、例えば chirp-v5
  • prompt:歌詞や創作のヒント(オプション)。
  • tags:音楽スタイルタグ、例えば acoustic, folk, warm(オプション)。
  • title:曲のタイトル(オプション)。
  • audio_weight:生成結果に対する参考音声の影響の重み、範囲は 0 から 1(オプション)。
説明:参考音声は公開アクセス可能な音声ファイルでなければなりません。参考音声がプラットフォームの曲ライブラリにある既知の録音と完全に一致する場合、Suno は著作権の確認により生成を拒否する可能性があるため、自分の音声や Suno が生成した音声をインスピレーションの源として使用することをお勧めします。
対応する Python コード:
クリックして実行すると、次のような結果が得られます:
こうしてインスピレーション創作の操作が完了し、返された結果は通常の生成された曲と一致します。

非同期コールバック

Sunoが音楽を生成するのにかかる時間は比較的長く、約1〜2分かかります。APIが長時間応答しない場合、HTTPリクエストは接続を維持し続け、追加のシステムリソースを消費するため、このAPIは非同期コールバックのサポートも提供しています。 全体の流れは、クライアントがリクエストを発行する際に、追加でcallback_urlフィールドを指定し、クライアントがAPIリクエストを発行した後、APIはすぐに結果を返し、現在のタスクIDを示すtask_idフィールド情報を含みます。タスクが完了すると、生成された音楽の結果がPOST JSON形式でクライアントが指定したcallback_urlに送信され、その中にもtask_idフィールドが含まれているため、タスクの結果をIDで関連付けることができます。 以下の例を通じて、具体的にどのように操作するかを理解しましょう。 まず、WebhookコールバックはHTTPリクエストを受信できるサービスであり、開発者は自分が構築したHTTPサーバーのURLに置き換える必要があります。ここではデモのために、公開のWebhookサンプルサイトhttps://webhook.site/を使用します。このサイトを開くとWebhook URLが得られます。 このURLをコピーすればWebhookとして使用できます。このサンプルはhttps://webhook.site/03e60575-3d96-4132-b681-b713d78116e2です。 次に、callback_urlフィールドを上記のWebhook URLに設定し、promptを入力します。 実行ボタンをクリックすると、すぐに結果が得られます。
少し待つと、https://webhook.site/03e60575-3d96-4132-b681-b713d78116e2で生成された曲の結果を観察できます。 内容は以下の通りです。
結果にはtask_idフィールドがあり、他のフィールドは前述の内容と似ています。このフィールドを通じてタスクの関連付けが可能です。 もちろん、ストリーミング呼び出しを通じて結果を取得することもできます。リクエストヘッダー内のacceptの値をapplication/x-ndjsonに設定するだけで済みます。以下に示すのは、入力の例です。

待機中に、以下の出力を得ることができます。
得られた結果は基本的な呼び出しと似ており、上記の複数の結果はストリーミング呼び出しを実現しています。

エラーハンドリング

エラーが発生した場合、次のようなエラーメッセージが表示されます:
以下はHTTPステータスコード、error.codeerror.messageのリストです:
説明:異なる上流アカウントの制限とエラーメッセージは異なる場合があります。通常、chirp-v3-5/chirp-v4style制限は低く(200)、chirp-v4-5以上は通常1000までサポートします。古い上流にヒットした場合、Tags too long.style must be less than or equal 120などの互換性のあるメッセージが表示されることがあります。