
よい Rivya API 連携は、1つのモデルに1回リクエストを送るだけではありません。
実際のプロダクトワークフローの多くは、小さなチェーンになります。適切なモデルを選び、入力を準備し、必要なら参照ファイルをアップロードし、ジョブを送信し、ステータスを監視し、クレジットを扱い、結果が準備できたらプロダクトへ通知します。
この記事では計画の形を示します。最短で実行できる経路には Rivya API Quickstart を使い、正確なリクエストフィールドは API ドキュメントを参照してください。
プロダクト上の瞬間から始める
エンドポイントを選ぶ前に、プロダクト上の瞬間を1文で説明します。
例:
出品者が出品ブリーフを送信したら、商品画像の下書きを作成する。キャンペーン担当者が静止画の方向性を承認した後、短い動画コンセプトを生成する。社内リサーチツール内で Chat turn を送り、レスポンスをユーザーへストリーミングで返す。参照画像をアップロードし、対応モデルのリクエストを送信し、結果が準備できたらユーザーへ通知する。
この1文が、連携を API 呼び出しのゆるい寄せ集めにしないための軸になります。
コードを書く前にワークフローを対応付ける
リクエストスキーマを開く前に、この表を使います。
| ワークフロー手順 | プロダクト上の問い | API 領域 |
|---|---|---|
| アカウントアクセス | どの Rivya アカウントが使用量を持つか? | API Authentication |
| モデル選択 | この仕事に合う公開 model ID はどれか? | API Models |
| 参照入力 | モデルにアップロード済みメディアが必要か? | Files API |
| 生成 | これは非同期の画像、動画、音声ジョブか? | Create Generation |
| Chat | これは生成ジョブではなく chat model turn か? | Chat API |
| ステータス | 結果が準備できたことをプロダクトはどう知るか? | Generation Status |
| 完了イベント | 別システムが署名付きコールバックを受け取るべきか? | API Webhooks |
| クレジット | チームはコストをどう理解するか? | API Credits |
各 API 領域に存在理由があると分かるくらい、ワークフローは明確であるべきです。
ステップ1:連携用のキーを作成する
そのキーを使う特定のアプリ、環境、ワークフロー向けに API key を作成します。
1つのキーをすべてに使うのは避けます。目的別にキーへ名前を付けると、後のレビューが楽になります。
production-image-workflowstaging-video-testsinternal-chat-assistantwebhook-smoke-test
キーを保存する前に API Authentication を読んでください。完全な secret は一度だけ表示されるため、チームはすぐに正しいサーバー側 secret store へ保存する必要があります。
ステップ2:公開 API リストからモデルを選ぶ
手動テストで動いたからといって、モデルをハードコードしないでください。
API Models と Model API Reference を使って、次を確認します。
公開 model ID
API 経由で利用可能か
対応入力モード
プロンプトとパラメータの期待値
Files API が必要か
クレジット挙動と readiness notes
多くの連携はここで整理されます。手動の Studio テストに最適なモデルが、自動化されたプロダクトフローの最初のモデルとして正しいとは限りません。
ステップ3:初版に Files API を含めるか決める
モデルがテキスト入力だけで実行できるなら、初版は text-only に保ちます。
ワークフローが本当に参照メディアを必要とするときだけ、Files API を追加します。
追加する場合は、次を定義します。
プロダクトが受け付けるファイル種別
ファイルクリーンアップ手順の責任者
アップロード失敗時の処理
返された file data をモデルパラメータへどう渡すか
同じファイルを再利用するのか、再アップロードするのか
これにより、見た目はきれいな生成ボタンの裏に、壊れやすいファイル体験が隠れることを防げます。
ステップ4:生成ジョブを1つ送信する
画像、動画、音声生成では、通常のパターンは次のとおりです。
model ID、プロンプト、対応 params を準備する
安全な retry のために idempotency key を追加する
generation endpoint から送信する
public task ID を保存する
タスクが終端状態に到達するまでステータスを poll する
リクエスト形状には Create Generation を使い、結果処理には Generation Status を使います。
プロダクトは queued、processing、succeeded、failed をユーザーに見える状態として扱うべきです。ユーザーにシステム詳細を読ませたり、ジョブが遅い理由を推測させたりしないでください。
ステップ5:Chat モデルには Chat API を使う
Chat モデルは generation endpoint ではなく、Chat API を使うべきです。
これは、chat 作業の挙動が異なるため重要です。
chat turn は API が作成した session に属せる
non-streaming と SSE streaming ではユーザー体験が異なる
画像添付は Files API からの file ID を使う
クレジット精算は通常の非同期メディアタスクではなく chat turn に従う
プロダクトが自前の画面内で assistant の回答を必要とするなら、Chat API が正しい経路かもしれません。ユーザーがまだアイデアを探索しているだけなら、Rivya Chat または Studio のほうが適している場合があります。
ステップ6:まず polling、次に Webhook
初版では、polling のほうが考えやすいです。
次の場合に API Webhooks を追加します。
プロダクトに多くの非同期ジョブがある
待機中のクライアントが直接 poll すべきではない
下流システムが署名付き完了イベントを必要としている
retry と duplicate handling がすでに設計されている
Webhook receiver は退屈で厳格であるべきです。署名を検証し、重複しても安全なイベントを受け入れ、1つのプロダクトレコードだけを更新し、安全に記録できることだけをログに残します。
ステップ7:プロダクト内でクレジットを見えるようにする
Rivya API は Studio と同じアカウントクレジットを使います。
連携側では、そのうちどれだけを表示するか決める必要があります。最低限、チームは次を知っているべきです。
どのアカウントが API key を所有しているか
どのワークフローがクレジットを消費できるか
クレジットが少なすぎる場合に何が起きるか
生成失敗状態をどう説明するか
クレジットと請求の質問をどこへ送るか
ユーザー向けウォレットモデルには、API Credits、Rivya のクレジットと請求、Rivya のクレジット、パック、プランの考え方 を使います。
小さな初版
よい初版は意図的に限定します。
例:
1つの API key
1つの選択済み画像モデル
まだファイルアップロードなし
1つの生成リクエスト
1つのステータス polling 経路
プロダクト内のシンプルな結果プレビュー
1つの明確なクレジットエラーメッセージ
このバージョンで接続を証明してから、動く部品を増やします。
より完全なバージョン
初版が動いた後、より完全なワークフローでは次を追加できます。
参照画像や動画向けの Files API
モデル固有のパラメータ制御
プロダクトレコードに結び付いた idempotency
完了用の署名付き webhooks
assistant turn 向けの Chat API
chat が live output を必要とする場合のサーバー側 event stream
失敗ジョブ向けの admin または support view
それぞれの追加は、実際のプロダクト上の必要に答えるべきです。デモを大きく見せるだけなら、省きます。
よくある連携ミス
次のパターンは避けます。
最初からすべての API 機能を入れる
アカウント所有者にクレジット使用量を見せない
Studio だけの前提を API フローへ持ち込む
ファイルアップロードを後付けの細部として扱う
idempotency なしで生成リクエストを retry する
非同期生成にすべきジョブに Chat API を使う
chat turn に generation endpoint を使う
API key、webhook secret、一時ファイル詳細の全体をログに残す
最も安全な API ワークフローは、所有、状態、失敗処理を明確にします。
次に進むページ
公開 API ハブは Developers から始めます。
最初のリクエストを実行するには Rivya API Quickstart を使います。
model ID を選ぶ前に API Models を使います。
モデルが本当に参照メディアを必要とするときだけ Files API を使います。
chat turn と streaming chat responses には Chat API を使います。
polling だけでは足りなくなったら API Webhooks を使います。
ワークフローにまだ人間の探索が必要なら、自動化する前に Rivya API を Studio の代わりに使うタイミング を読んでください。


