Skip to main content

クイックスタート

ネイティブ画像エンドポイントはデフォルトで同期です。Boolean の asynctrue にするとバックグラウンドタスクになります。例では qwen-image-2.0 を使用します。

非同期メディアモデルを見つけて Schema を取得する方法

ディスカバリーは 2 段階です。まず、公開モデルカタログから非同期 API に対応する画像生成または動画生成モデルを取得します。次に、モデルの model_id を使って、そのエンドポイントのリクエスト Schema を取得します。

非同期 API 対応モデルの一覧を取得する

モデルカタログは Playground と同じデータソースを使用します。画像生成モデルには type=image_generation、動画生成モデルには type=video を指定します。schema_checked=true を追加すると、リクエスト Schema が公開され、確認済みのモデルだけが返されます。
どちらも同じ API を使用します。現在、type フィルターは 1 つの値を受け付けるため、モデルタイプごとにリクエストしてください。 レスポンスの形は {success, message, data} です。非同期メディア連携に関連する data のフィールドは次のとおりです。

1 つのモデルのリクエスト Schema を取得する

対応するフィールド、列挙値、数値範囲はモデルごとに異なります。画像または動画のリクエストを送信する前に、次の公開 API で対象モデルの利用可能なエンドポイントとリクエスト JSON Schema を取得してください。
レスポンスの modalityimage または video です。endpoints 配列の各項目が、利用可能な呼び出しプロトコルを示します。 同じモデルで /ai/v1 エンドポイントと OpenAI 互換の /v1 エンドポイントが返される場合があります。OpenAI 互換エンドポイントは最新モデルにまだ対応していない可能性があるため、/ai/v1 エンドポイントを優先してください。非同期タスク API では、path/ai/v1/images/generations または /ai/v1/videos の項目を選び、その request.schema を使用してください。endpoints 配列内の位置には依存しないでください。 次のコマンドで、各非同期タスクエンドポイントのリクエスト Schema を直接抽出できます。
モデルが存在しない、または公開可能なエンドポイントがない場合は 404 model_not_found が返されます。エンドポイントデータを一時的に取得できない場合は 500 endpoints_unavailable が返されます。

画像タスクを作成する方法

同期画像

async を省略するか false に設定すると、API は生成が完了するまで待機し、タスクオブジェクトを返します。
同期画像タスクもタスクレコードとして保存されます。クライアント接続が中断した場合や作成レスポンスを失った場合は、GET /ai/v1/images で該当タスクを検索できます。

非同期画像

async をブール値 true に設定すると、API はすぐにタスクオブジェクトを返し、生成処理はバックグラウンドで続行されます。
非同期画像タスクは GET /ai/v1/images/{id} で照会します。完了後は、各 output 項目の content_url を直接リクエストしてください。この URL には、該当画像の result_id が含まれています。
画像リクエストの async はブール値でなければなりません。webhook_urlwebhook_events_filterasync: true と組み合わせた場合にのみ使用できます。

画像の標準フィールド


メディアタスクオブジェクト

画像と動画の専用 API は、次の構造を返します。
メディアの output 項目:

ステータスの説明

クライアントは、ステータスが completedfailedcancelled のいずれかになるまで、15 秒ごとに照会できます。15 秒はクライアント側の推奨ポーリング間隔であり、サーバープロトコルの制限ではありません。

メディアタスクを照会する方法

メディア詳細の照会

メディア詳細 API は更新後のタスクステータスを返す場合があるため、メディアのポーリングには該当する画像または動画の詳細 API を使用してください。

メディア一覧の照会

作成レスポンスを失った場合は、該当するメディア一覧からタスク ID を取得できます。
メディア一覧は照会時点のタスクスナップショットを返し、タスクステータスを能動的に更新することはありません。

統一タスク API を使用する方法

統一タスク API では、次の条件で絞り込めます。
統一タスクの詳細:
メディアタスクの統一 output 項目:
単一成果物の場合は /ai/v1/tasks/{id}/content を直接リクエストします。複数成果物のタスクでは /ai/v1/tasks/{id}/content/{result_id} をリクエストする必要があり、結果 ID を指定しない場合は 400 result_id_required が返されます。
統一タスクの一覧、詳細、コンテンツ API は、タスク作成時の Bearer Token ごとに分離されています。同じアカウントの別の API Key からは、このタスクを読み取れません。

メディア結果をダウンロードする方法

画像のダウンロード

画像の完了後、メディアタスクオブジェクトの output[].content_url を項目ごとにリクエストします。
画像メディアのダウンロードパスは /ai/v1/images/{id}/content/{result_id} です。メディアタスクオブジェクトでは result_id が個別に公開されないため、クライアントは content_url をそのまま使用できます。 b64_json が空でない場合は、このフィールドを直接 Base64 デコードできます。

Webhook を使用する方法

非同期画像と動画は、タスク単位の Webhook に対応しています。
webhook_url は最大 512 文字で、ローカルホスト、プライベートネットワーク、その他の制限対象アドレスを指定することはできません。webhook_events_filter を省略すると、プラットフォームは completedfailedcancelled を配信します。明示的に渡す場合、配列は空にできず、重複も許可されません。また、webhook_url と一緒に使用する必要があります。 リクエストで webhook_url を渡さなかった場合、非同期画像と動画ではアカウントに設定されたデフォルトのコールバック URL が使用されます。アカウントのデフォルト URL が無効な場合は無視され、タスクの作成は妨げられません。

コールバックリクエスト

results は結果がアーカイブ済みの場合にのみ含まれ、ダウンロードには引き続き Bearer Token が必要です。

リトライと重複排除

プラットフォームは少なくとも 1 回の配信を行うため、同じイベントが複数回届く場合があります。
  • HTTP 2xx は受信成功を示します。
  • HTTP 5xx、ネットワークエラー、タイムアウトの場合は再試行します。
  • HTTP 3xx4xx の場合は再試行しません。
  • 配信は最大 6 回で、再試行間隔は順に 1、4、16、64、256 秒です。
受信側は event_id を保存し、同じイベントを再度受信した場合はそのまま 2xx を返してください。
タスク単位の Webhook 自体には、独立した署名キーが含まれません。署名検証が必要な場合は、アカウント単位の Webhook サブスクリプションを設定し、結果の確認手段としてタスク詳細の照会も維持してください。

エラーレスポンスとエラーコード

error.tid はリクエストのトレース ID です。テクニカルサポートへ調査を依頼する際は、あわせて提示してください。

完全な例

非同期タスクを作成し、ポーリングして、返された画像をすべて保存します。