API で呼び出す(画像 / 動画)
標準の OpenAI インターフェース形式、トークン認証です。画像は同期で base64 を返します;動画は非同期タスクです(作成 → ポーリング → ダウンロード)。
トークングループ
トークンは必ず media / media-gen グループに属している必要があります。そうでないと「利用可能なチャネルがありません」というエラーになります。詳しくは グループの選択 をご覧ください。
画像 · テキストから画像
POST https://byesu.com/v1/images/generations
Authorization: Bearer sk-あなたのトークン
Content-Type: application/json| フィールド | 必須 | 説明 |
|---|---|---|
model | ✅ | モデル名。画像生成 を参照 |
prompt | ✅ | プロンプト |
size | 幅x高さのピクセル。比率と解像度グレードを同時に決定します:長辺 ≈1024 → 1K、≈2048 → 2K、≈3840 → 4K。例:"1024x1024"(1:1 · 1K)、"2048x1152"(16:9 · 2K)、"3840x3840"(1:1 · 4K)。省略時は 1:1 の基本グレード |
bash
curl https://byesu.com/v1/images/generations \
-H "Authorization: Bearer sk-あなたのトークン" \
-H "Content-Type: application/json" \
-d '{
"model": "nano-banana-2",
"prompt": "夕暮れどき、金色の麦畑を駆けるゴールデンレトリバー、映画のような質感",
"size": "2048x1152"
}'レスポンス(画像は PNG の base64):
json
{ "data": [ { "b64_json": "<base64 文字列>" } ] }画像 · 画像から画像(参照画像)
POST /v1/images/edits を使います。multipart/form-data 形式で、参照画像をファイルとしてアップロードします(フィールド名 image、繰り返し指定で複数枚送信可、1 枚 ≤8MB、上限枚数はモデルにより異なります。画像生成 を参照):
bash
curl https://byesu.com/v1/images/edits \
-H "Authorization: Bearer sk-あなたのトークン" \
-F model="nano-banana-2" \
-F prompt="この写真を水彩画風に変えてください" \
-F size="1024x1024" \
-F image=@ref1.png \
-F image=@ref2.pngレスポンス形式はテキストから画像と同じです。
動画(非同期・Sora スタイル)
3 ステップです:タスクを作成 → ステータスをポーリング → mp4 をダウンロード。
python
import requests, time
BASE = "https://byesu.com"
H = {"Authorization": "Bearer sk-あなたのトークン"}
# 1. タスクを作成
task = requests.post(f"{BASE}/v1/videos", headers=H, json={
"model": "gemini-veo31",
"prompt": "岩に打ち寄せる波、スローモーション、映画のような質感",
"seconds": "6", # 長さ(秒)。選択肢はモデルにより異なる
"size": "1280x720", # 比率はサイズで表現;1920x1080 = 1080p(一部モデルのみ対応)
}).json()
# 2. 完了までポーリング(数十秒〜数分)
while task["status"] not in ("completed", "failed"):
time.sleep(5)
task = requests.get(f"{BASE}/v1/videos/{task['id']}", headers=H).json()
# 3. mp4 をダウンロード
if task["status"] == "completed":
mp4 = requests.get(f"{BASE}/v1/videos/{task['id']}/content", headers=H)
open("out.mp4", "wb").write(mp4.content)画像から動画:タスク作成時に multipart/form-data を使い、最初のフレーム画像を input_reference ファイルフィールドに入れます(model / prompt / seconds / size はフォームフィールドとして一緒に送信します)。runway-gen4-turbo は最初のフレーム画像が必須です。
動画は秒単位で課金
動画の価格 = 1 秒あたりの単価 × seconds。タスクが失敗した場合は自動返金されます。
エラー
- 「利用可能なチャネルがありません」 → トークングループが正しくありません。グループの選択 を参照
too many reference images→ 参照画像がそのモデルの上限枚数を超えています- 401 / 残高不足 / その他 → よくあるエラーと解決方法 をご覧ください
