Images API
엔드포인트는 두 개:생성(텍스트 → 이미지), 편집(이미지 + 텍스트 → 이미지). 응답은 모두 OpenAI 표준 구조 data[0].b64_json입니다.
Gemini 계열 이미지 모델(예:google/gemini-3.1-flash-image-preview)은 본 엔드포인트에서 생성만 가능하고 편집은 불가능합니다. 편집이 필요하면 Gemini 네이티브 프로토콜을 사용하세요.
이미지 생성
POST https://api.ofox.ai/v1/images/generationsgpt-image-2 사용
Python
import base64
from openai import OpenAI
client = OpenAI(api_key="YOUR_OFOX_API_KEY", base_url="https://api.ofox.ai/v1")
resp = client.images.generate(
model="openai/gpt-image-2",
prompt="A simple red apple on a white table",
size="1024x1024",
quality="low",
output_format="png",
)
with open("output.png", "wb") as f:
f.write(base64.b64decode(resp.data[0].b64_json))실제 출력:

gemini-3.1-flash-image-preview 사용
같은 엔드포인트에서 Gemini 이미지 모델도 사용할 수 있습니다. n을 전달하지 마세요 —— 게이트웨이가 n을 numberOfImages 필드로 잘못 매핑하여 400 오류를 반환하며, 매번 1장만 고정 생성됩니다.
Python
import base64
from openai import OpenAI
client = OpenAI(api_key="YOUR_OFOX_API_KEY", base_url="https://api.ofox.ai/v1")
resp = client.images.generate(
model="google/gemini-3.1-flash-image-preview",
prompt="A simple red apple on a white table, photorealistic",
size="1024x1024",
quality="low",
output_format="png",
)
with open("output.png", "wb") as f:
f.write(base64.b64decode(resp.data[0].b64_json))실제 출력:

파라미터
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
model | string | ✅ | openai/gpt-image-2, google/gemini-3.1-flash-image-preview |
prompt | string | ✅ | 자연어 설명 |
quality | string | ✅ | auto / low / medium / high / standard / hd |
n | number | — | 1–10, 기본값 1. Gemini 모델은 미지원 |
size | string | — | auto / 1024x1024 / 1536x1024 / 1024x1536 / 256x256 / 512x512 / 1792x1024 / 1024x1792 |
output_format | string | — | png / jpeg / webp |
background | string | — | transparent / opaque / auto |
stream | boolean | — | 기본값 false |
응답
{
"created": 1777385517,
"data": [
{ "b64_json": "<이미지 Base64>", "index": 0 }
],
"model": "openai/gpt-image-2",
"size": "1024x1024",
"quality": "low",
"usage": {
"input_tokens": 14,
"input_tokens_details": { "text_tokens": 14 },
"output_tokens": 208,
"total_tokens": 222
}
}이미지는 data[0].b64_json에 있으며, base64 디코딩 후 직접 저장하세요.
이미지 편집
POST https://api.ofox.ai/v1/images/editsmultipart/form-data로 이미지 파일을 업로드해야 합니다.
이 엔드포인트는 OpenAI / Azure OpenAI 모델만 지원합니다. google/gemini-3.1-flash-image-preview를 호출하면 Image editing is not supported for model 오류가 반환됩니다 —— Gemini 네이티브 프로토콜로 이미지 편집을 사용하세요.
호출
Python
import base64
from openai import OpenAI
client = OpenAI(api_key="YOUR_OFOX_API_KEY", base_url="https://api.ofox.ai/v1")
with open("apple.png", "rb") as f:
resp = client.images.edit(
model="openai/gpt-image-2",
image=f,
prompt="사과를 초록색으로 바꾸고, 나머지는 그대로 두세요",
size="auto",
quality="low",
)
with open("apple_edited.png", "wb") as out:
out.write(base64.b64decode(resp.data[0].b64_json))image 필드에는 로컬 파일 경로를 전달하세요(cURL은 @ 접두사 사용). URL이 아닙니다.
실제 비교:
| 원본 | 편집 후 |
|---|---|
![]() | ![]() |
파라미터
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
model | string | ✅ | openai/gpt-image-2 권장 |
image | file | ✅ | PNG / JPEG 파일 |
prompt | string | ✅ | 편집 지시문 |
quality | string | ✅ | low / medium / high |
n | number | — | 기본값 1 |
size | string | — | auto는 원본과 동일한 크기 |
응답
생성 응답과 동일:
{
"created": 1777385669,
"data": [
{ "b64_json": "<편집된 이미지 Base64>", "index": 0 }
],
"model": "openai/gpt-image-2",
"size": "auto",
"quality": "low",
"usage": {
"input_tokens": 1041,
"input_tokens_details": { "image_tokens": 1024, "text_tokens": 17 },
"num_input_images": 1,
"output_tokens": 358,
"total_tokens": 1399
}
}usage.input_tokens_details.image_tokens는 입력 이미지가 소비한 토큰이며, num_input_images는 입력 이미지 장수입니다.
지원 모델과 가격은 모델 카탈로그 에서 확인하세요.
