メディアのアップロードとダウンロード
署名付き入力アップロードと短時間有効な成果物 URL。
公開 HTTPS の画像・動画・音声 URL は、そのままモデルの対応フィールドに渡せます。ローカルファイルのみ、以下のアップロードと commit を行います。 準備済みの output.assets[].url をそのまま取得してください。API キーは付けません。expiresAt は通常20分後で、結果の保存期間14日を超えません。期限切れなら再度ポーリングします。download-url は任意です。
POST /api/v1/common/upload-url
PUT <uploadUrl>
POST /api/v1/files/{fileId}/commit
GET <output.assets[].url>Base64 を SDK からアップロードする
SDK の client.uploadBase64 は Data URI、または contentType を指定した Base64 文字列を受け取り、既存のアップロードと commit を実行します。返された spicy:// URI を input に渡してください。画像は 10 MiB、音声・動画は 100 MiB までで、モデルにより低い上限がある場合はそちらも適用されます。Base64 をモデルの入力フィールドへ直接送る手順ではありません。
入力をアップロードする
POST /api/v1/common/upload-url で fileId と uploadUrl を取得し、指定された Content-Type でファイルを PUT します。次に POST /api/v1/files/{fileId}/commit を呼び出し、そのレスポンスで返された spicy:// URI だけをモデルの input フィールドへ渡します。uploadUrl や一時オブジェクトのパスは input に入れないでください。
署名対象と一致する Content-Type を使い、クライアント側でも形式とサイズを確認します。入力 URI はアカウントに紐付くため、他アカウントの URI は使えません。
結果をダウンロードする
利用可能な output.assets[].url から直接ダウンロードできます。API キーは送信しないでください。expiresAt は通常 20 分後で、生成メディアの保存期限である 14 日を超えません。URL が失効した場合は、保存期間内であれば再照会して更新できます。download-url の呼び出しは任意です。
完全なフィールド定義は OpenAPI 3.1 仕様を参照してください。
関連ドキュメント
画像は 10 MiB、音声・動画は 100 MiB が上限です。Schema の max_size_mb が小さい場合はそちらを優先し、最終上限はチケットの maxBytes に従います。音声・動画は最大 600 秒です。commit は実際の形式を確認し、durationSeconds(十進文字列)、width、height を返す場合があります。成功した commit の spicy:// URI のみを利用し、有効期間は 1 日です。
image/jpeg · image/png · image/webp · image/gif · video/mp4 · video/webm · audio/mpeg · audio/wav

