簡単な回答
APIYI では現在、画像生成向けの非同期タスクID照会インターフェースは提供していません。すべての画像モデルは同期型で、リクエストが長時間の接続を開き → 生成完了を待機し → 画像を直接返します。 当社は上流パススルーとして動作しており、ユーザーの業務データを保存しません。そのため、「ID を使って再接続し、以前に生成された結果を取得する」機能は提供できません。クライアント側で適切なタイムアウトを設定し、接続を維持しつつ、リクエスト/レスポンスを自社バックエンドに記録することをおすすめします。要するに: 同期呼び出し + 適切なタイムアウト + クライアント側のタスク記録 = 実質的に自分で制御する軽量な非同期キューです。エンドユーザーの体験はほぼ同じです。
なぜ Task-ID の非同期クエリがないのですか?
上流パススルー
当社の画像エンドポイントは、上流の公式APIの同期動作を完全にそのまま反映しており、不整合や遅延を生みうる追加のキュー層はありません
プライバシーとセキュリティを最優先
ユーザーのプライバシーとデータセキュリティのため、私たちはいかなるビジネスコンテンツも記録しません(prompt、生成画像)。そのため、ID で過去の結果を取得することは設計上できません
同期でほとんどのケースをカバー
適切に調整された timeout と keep-alive 接続があれば、画像生成リクエストの大半は 1 回の呼び出しで正常に完了します
推奨アプローチ
1
クライアントでは長時間接続 + 適切なタイムアウトを使用する
HTTPクライアントのタイムアウトを、モデルの生成時間に対して安全な上限に設定し(通常はモデルに応じて60〜300秒です)、keep-aliveを有効にして、中間のネットワーク層が接続を早期に切断しないようにします。生成時間はモデルごとに大きく異なります — モデル別の推奨タイムアウト表 についてはサポートまでお問い合わせください。
2
タスクとレスポンスを自社バックエンドに記録する
当社では業務データを永続化しないため、各リクエストごとに業務側のタスクIDを生成し、prompt、パラメータ、最終結果(またはエラー)をデータベースに保存してください。フロントエンドが切断されても、バックエンドには完全な記録が残ります。
3
独自の非同期ラッパーを実装する
製品が非同期である必要がある場合(たとえば、フロントエンドが長時間実行される呼び出しを待てない場合)、バックエンドに薄い非同期レイヤーを追加します:
- フロントエンドがタスクを POST する → バックエンドがキューに投入する → 業務用タスク ID を返す
- バックエンドのワーカーが APIYI を同期的に呼び出す → 結果をデータベースに書き戻す
- フロントエンドがそのタスク ID を使ってポーリングするか、WebSocket 経由でサブスクライブする
クライアント側の非同期ラッパー(参考)
FAQ
同期呼び出しがすぐタイムアウトしてしまいます。どうすればよいですか?
同期呼び出しがすぐタイムアウトしてしまいます。どうすればよいですか?
タイムアウトの多くは、クライアントのタイムアウトが短すぎること、または中間のネットワーク層(リバースプロキシ、ゲートウェイなど)が長い接続を早期に切断していることが原因です。トラブルシューティングの順序:
- HTTP クライアントの read timeout を 60~300 秒に引き上げていることを確認します
- 中間層(nginx、API gateway、CDN)でも timeout が引き上げられていることを確認します
- 強制切断を防ぐために keep-alive を有効にします
- ご利用の特定モデルに推奨される timeout について support にお問い合わせください
呼び出しはタイムアウトしましたが、画像は実際には生成されていたかもしれません。復元できますか?
呼び出しはタイムアウトしましたが、画像は実際には生成されていたかもしれません。復元できますか?
残念ながら、できません。私たちは上流のパススルーであり、生成結果を保持していません。sync 呼び出しが timeout によって中断された場合、結果は失われ、client は再試行する必要があります。対策は、あらかじめ timeout を十分長く設定し、成功直前の request が途中で切れないようにすることです。
今後、async の task-ID エンドポイントは追加されますか?
今後、async の task-ID エンドポイントは追加されますか?
一部の upstream プラットフォームは遅いことがあり、そのようなケースでは async のほうが使いやすいことは認識しています。今後 async 機能を追加する可能性はありますが、現時点では時期は未定です。約束はできません。それまでは、上記の「client-side async wrapper」方式に従ってください。
動画生成のエンドポイント(Sora / VEO など)は async ですか?
動画生成のエンドポイント(Sora / VEO など)は async ですか?
はい — 動画生成は本質的に非同期です(upstream の設計によります)。task_id が返され、client は最終動画を取得するために task の status をポーリングします。これは同期の画像エンドポイントとは異なります。モデルごとのドキュメントに従ってください。
異なる画像モデルに対する推奨 timeout は何ですか?
異なる画像モデルに対する推奨 timeout は何ですか?
生成時間はモデルによって大きく異なります(数秒で終わるものもあれば、30 秒以上、あるいは 3~5 分かかるものもあります)。Image API Essentials & Best Practices の モデル別 timeout 早見表をご覧いただくか、特別なケースについては support にお問い合わせください。
関連ドキュメント
Image API の基礎とベストプラクティス
モデル別のタイムアウト表、base64 の扱い、URL 出力のリファレンス
独自の非同期キューを構築する
同期 API をタスクキューにラップするためのエンジニアリングガイド
モデル選定ガイド
各画像モデルの機能とユースケース
API 同時実行数とレート
同時実行数の上限、レート制限、ベストプラクティス
コールログとデータ
当社のデータ保持ポリシーとログ制御
サポートにお問い合わせ
モデル別のタイムアウト表、またはさらにご相談ください