API リファレンス

GPT Image 2 のオープン API を使用して、プログラムから画像を生成・編集できます。独自の API キーで認証し、クレジットで支払い、ポーリングで結果を取得します。

概要

GPT Image 2 API を使用すると、GPT Image 2 アカウントを通じて画像を生成できます。リクエストはサイトの API キーを使用し、サーバーサイドの Kie インテグレーションを通じてルーティングされます。

API キーの作成先:

/settings/apikeys

次のエンドポイントを呼び出します:

POST /api/v1/images/generations
GET /api/v1/images/tasks/{task_id}

画像生成は非同期です。作成エンドポイントはタスク ID を返し、タスクエンドポイントは生成が成功すると最終的な画像 URL を返します。

認証

GPT Image 2 の API キーを Bearer トークンとして送信します:

Authorization: Bearer sk-xxx

ブラウザ側のコードに API キーを公開しないでください。バックエンド、スクリプト、またはサーバーレス関数から使用してください。

課金

API の使用は Web アプリと同じクレジットを消費します:

操作クレジット費用
画像生成画像 1 枚につき 10 クレジット

タスクが受け入れられる前にプロバイダーのリクエストが失敗した場合、消費されたクレジットはタスク失敗フローによって自動的に返金されます。

画像生成の作成

エンドポイント

POST https://gpt-image-2.art/api/v1/images/generations

リクエストボディ

パラメータ必須説明
modelstringいいえgpt-image-2 を使用します。内部エイリアス gpt-image-2-text-to-image および gpt-image-2-image-to-image も使用できます。
promptstringはい画像のテキスト説明。image_urls が指定されていない限り必須です。
image_urlsstring[]いいえ画像から画像への生成用の参照画像 URL。
nintegerいいえ生成する画像の数(1〜10)。デフォルト:1
sizestringいいえ1024x10241536x10241024x15361920x10881088x19203824x21602160x3824、または auto のいずれか。
qualitystringいいえプロバイダーの品質オプション(例:high または auto)。
output_formatstringいいえプロバイダーがサポートしている場合、pngjpeg、または webp
response_formatstringいいえurl のみサポートされています。
userstringいいえ独自のトラッキング用のオプションのエンドユーザー識別子。

テキストから画像への例

curl https://gpt-image-2.art/api/v1/images/generations \
  -H "Authorization: Bearer $GPT_IMAGE_2_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2",
    "prompt": "A cinematic product photo of a matte black coffee bag on a marble counter",
    "size": "1536x1024",
    "quality": "high",
    "n": 1
  }'

画像から画像への例

curl https://gpt-image-2.art/api/v1/images/generations \
  -H "Authorization: Bearer $GPT_IMAGE_2_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2",
    "prompt": "Keep the product unchanged and place it on a clean studio background",
    "image_urls": ["https://example.com/product.png"],
    "size": "1024x1024",
    "n": 1
  }'

作成レスポンス

{
  "id": "8f6d9f87-1b3f-4f89-bdfb-3df8e77b7af3",
  "object": "image.generation",
  "created": 1714000000,
  "model": "gpt-image-2-text-to-image",
  "status": "pending",
  "credits": 10,
  "data": []
}

id を保存し、タスクエンドポイントをポーリングしてください。

画像タスクの照会

エンドポイント

GET https://gpt-image-2.art/api/v1/images/tasks/{task_id}

curl https://gpt-image-2.art/api/v1/images/tasks/8f6d9f87-1b3f-4f89-bdfb-3df8e77b7af3 \
  -H "Authorization: Bearer $GPT_IMAGE_2_API_KEY"

成功レスポンス

{
  "id": "8f6d9f87-1b3f-4f89-bdfb-3df8e77b7af3",
  "object": "image.generation",
  "created": 1714000000,
  "model": "gpt-image-2-text-to-image",
  "status": "succeeded",
  "credits": 10,
  "data": [
    {
      "url": "https://..."
    }
  ]
}

status の取りうる値:

ステータス意味
pendingタスクはキューに入っています。
processingプロバイダーが画像を生成しています。
succeeded画像 URL が data で利用可能です。
failed生成に失敗しました。
canceled生成がキャンセルされました。

JavaScript の例

const apiKey = process.env.GPT_IMAGE_2_API_KEY;

const createRes = await fetch(
  'https://gpt-image-2.art/api/v1/images/generations',
  {
    method: 'POST',
    headers: {
      Authorization: `Bearer ${apiKey}`,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      model: 'gpt-image-2',
      prompt:
        'A premium skincare bottle on wet stone with soft studio lighting',
      size: '1024x1024',
      n: 1,
    }),
  }
);

const task = await createRes.json();

let result = task;
while (['pending', 'processing'].includes(result.status)) {
  await new Promise((resolve) => setTimeout(resolve, 3000));
  const queryRes = await fetch(
    `https://gpt-image-2.art/api/v1/images/tasks/${task.id}`,
    {
      headers: {
        Authorization: `Bearer ${apiKey}`,
      },
    }
  );
  result = await queryRes.json();
}

console.log(result.data);

エラーフォーマット

エラーは OpenAI スタイルの形式に従います:

{
  "error": {
    "message": "Invalid API key provided.",
    "type": "authentication_error",
    "param": null,
    "code": "invalid_api_key"
  }
}

関連リソース