API ReferenceImage APIs

GPT Image 2 非同期画像 API

ReachAPI は、GPT Image 2 向けのタスク型画像 API を提供しています。タスク状態の確認、完了時コールバック、最終画像 URL の data[].url での取得が必要な場合は、この非同期 API を使用してください。

非同期 API では公開モデルコード gpt-image-2-async を使用します。このコードは POST /v1/images/create 専用です。OpenAI Image API 互換インターフェースの /v1/images/generations/v1/images/edits では、引き続き gpt-image-2 を使用します。

1. 概要

  • タスク送信: POST https://direct.reachapi.ai/v1/images/create
  • タスク照会: GET https://direct.reachapi.ai/v1/tasks/{task_id}
  • モデルコード: gpt-image-2-async
  • 実行方式: 非同期タスク
  • 結果フィールド: data[].url

リクエストヘッダー:

Authorization: Bearer YOUR_REACH_API_KEY
Content-Type: application/json

2. タスク送信

リクエスト body:

{
  "model": "gpt-image-2-async",
  "callback_url": "https://your-domain.com/callback",
  "input": {
    "prompt": "A children's book drawing of a veterinarian using a stethoscope to listen to a small animal.",
    "resolution": "1k",
    "aspect_ratio": "2:3",
    "quality": "medium",
    "background": "auto",
    "moderation": "auto",
    "output_format": "png"
  }
}

2.1 トップレベルパラメーター

フィールド必須説明
modelstringはいgpt-image-2-async を指定します
callback_urlstringいいえタスク完了時の HTTPS コールバック URL。最大長は 2048。ローカル、プライベートネットワーク、localhost 宛先は拒否されます
inputobjectはい画像生成パラメーター

2.2 input パラメーター

フィールド必須説明
promptstringはい画像生成または画像編集のプロンプト
image_urlsarray<string>いいえ参照画像 URL。省略または空配列はテキストから画像への生成、1 件以上は画像編集を表します。最大 14 枚
sizestringいいえ正確な出力サイズ。例: 1024x1536。指定すると resolution + aspect_ratio より優先されます
resolutionstringいいえ標準解像度。対応値: 1k, 2k, 4k。省略時は 1k
aspect_ratiostringいいえ標準アスペクト比。対応値: 1:1, 3:2, 2:3。省略時は 1:1
qualitystringいいえ品質。対応値: low, medium, high。省略時は medium
backgroundstringいいえ背景モード。対応値: auto, opaque, transparentgpt-image-2transparent に対応していません
moderationstringいいえモデレーションモード。対応値: auto, low
output_formatstringいいえ希望する出力形式。対応値: png, jpeg, webp

補足:

  • input.sizeresolution + aspect_ratio より優先されます
  • input.size は、最長辺が 3840px 以下、両辺が 16px の倍数、長辺と短辺の比率が 3:1 以下、総ピクセル数が 655,360 以上 8,294,400 以下である必要があります
  • background=transparentoutput_format=jpeg は同時に使用できません
  • ローカル画像を使う場合は、先にアクセス可能な HTTPS URL としてアップロードし、input.image_urls に渡してください

2.3 標準サイズの対応

resolution + aspect_ratio出力サイズ
1k + 1:11024x1024
1k + 3:21536x1024
1k + 2:31024x1536
2k + 1:12048x2048
2k + 3:22048x1152
4k + 3:23840x2160
4k + 2:32160x3840

表にない組み合わせが必要な場合は、input.size で正確な出力サイズを指定してください。

3. 料金

非同期タスク API は、正規化された resolution + quality に基づいてリクエスト単位で課金されます。

quality は大文字小文字を区別せず、lowmediumhigh に正規化されます。省略時は medium です。

quality1k2k4k
low$0.010$0.020$0.030
medium$0.060$0.120$0.180
high$0.220$0.440$0.660

課金に使われる解像度は次のように決まります。

  • input.size がある場合、幅と高さのピクセル数から 1k2k4k に分類されます
  • input.size がない場合は input.resolution を使用します。省略時は 1k です

4. リクエスト例

4.1 テキストから画像

curl -X POST "https://direct.reachapi.ai/v1/images/create" \
  -H "Authorization: Bearer YOUR_REACH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2-async",
    "input": {
      "prompt": "An editorial fashion photo of a silver handbag on a reflective pedestal, soft studio lighting",
      "resolution": "4k",
      "aspect_ratio": "2:3",
      "quality": "high",
      "output_format": "png"
    }
  }'

4.2 カスタムサイズ

curl -X POST "https://direct.reachapi.ai/v1/images/create" \
  -H "Authorization: Bearer YOUR_REACH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2-async",
    "input": {
      "prompt": "A fashion poster with a tall custom composition",
      "size": "2336x3504",
      "quality": "high",
      "output_format": "png"
    }
  }'

4.3 画像編集

curl -X POST "https://direct.reachapi.ai/v1/images/create" \
  -H "Authorization: Bearer YOUR_REACH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2-async",
    "input": {
      "prompt": "Turn this sneaker photo into a premium e-commerce hero shot with a clean studio background",
      "image_urls": [
        "https://cdn.example.com/reference-1.png"
      ],
      "resolution": "1k",
      "aspect_ratio": "1:1",
      "quality": "medium",
      "output_format": "jpeg"
    }
  }'

5. 送信レスポンス

{
  "code": 200,
  "msg": "",
  "status": "queued",
  "task_id": "task_xxx",
  "data": []
}
フィールド説明
codeintegerビジネスステータスコード
msgstring状態またはエラーメッセージ
statusstring初期タスク状態。通常は queued
task_idstring結果照会に使うタスク ID
dataarray送信時点では空配列

6. タスク照会

リクエスト:

curl -X GET "https://direct.reachapi.ai/v1/tasks/task_xxx" \
  -H "Authorization: Bearer YOUR_REACH_API_KEY"

ステータス:

ステータス説明
queued受理済み、実行待ち
generating生成中
success生成成功
failed生成失敗

成功レスポンス:

{
  "code": 200,
  "msg": "",
  "status": "success",
  "task_id": "task_xxx",
  "data": [
    {
      "url": "https://cdn.example.com/generated/gpt-image-2.png",
      "size": "1024x1536",
      "revised_prompt": "A children's book illustration of a veterinarian using a stethoscope."
    }
  ],
  "cost": {
    "spend": 0.12
  }
}

失敗レスポンス:

{
  "code": 500,
  "msg": "Model service request failed",
  "status": "failed",
  "task_id": "task_xxx",
  "data": []
}

7. コールバック

タスク送信時に callback_url を指定した場合、ReachAPI はタスクが success または failed になったあと、その URL に POST リクエストを送信します。コールバック body はタスク照会レスポンスと同じ JSON 構造です。

コールバック制約:

  • HTTPS のみ
  • 最大長: 2048
  • localhost.local、プライベートネットワーク、ローカル IP 宛先は拒否されます
  • 1 回の送信タイムアウト: 10s
  • 送信失敗時は最大 2 回再試行され、合計最大 3 回送信されます

8. 制約

  • prompt は必須で、空文字列は使用できません
  • image_urls はサーバーからアクセス可能な HTTPS URL のみ対応します
  • image_urls は最大 14 枚まで対応します
  • image_base64s は対応していません
  • n > 1 は対応していません
  • この非同期 API では mask は対応していません
  • output_compression は対応していません
  • user は対応していません
  • size はピクセル寸法で指定し、最長辺が 3840px 以下、両辺が 16px の倍数、長辺と短辺の比率が 3:1 以下、総ピクセル数が 655,360 以上 8,294,400 以下である必要があります
  • resolution1k2k4k に対応します
  • 標準サイズ対応では、aspect_ratio1:13:22:3 に対応します
  • size を指定しない場合、resolution + aspect_ratio は標準サイズの対応表に一致する必要があります
  • qualitylowmediumhigh に対応します
  • backgroundmoderationoutput_format は文書化された列挙値を使用してください
  • background=transparentoutput_format=jpeg に対応していません

On this page