Endpoints
Method Endpoint Description POST /api/v1/generateTask/gpt-image-1Создание задачи генерации GET /api/v1/statusTask/gpt-image-1Запрос статуса задачи
Authentication
Все запросы требуют API Key в заголовке:
Authorization: Bearer YOUR_API_KEY
Request Body
{
"request_type" : "async" ,
"callback_url" : "https://..." ,
"provider" : "auto" ,
"input" : {
"mode" : "gpt-image-1" ,
"prompt" : "..." ,
"aspect_ratio" : "3:2" ,
"num_images" : 2 ,
"image_urls" : [ "..." ]
}
}
Parameters
request_type
string
по умолчанию: "async"
async (polling) или callback (webhook)
Callback URL, обязателен при request_type=callback (условно)
provider
string
по умолчанию: "auto"
Стратегия маршрутизации: auto, value или official
Параметры входа модели mode
string
по умолчанию: "gpt-image-1"
обязательно
Generation mode: gpt-image-1
Text description, 1-10000 characters
aspect_ratio
string
по умолчанию: "1:1"
обязательно
1:1, 2:3, or 3:2
num_images
integer
по умолчанию: "1"
обязательно
Number of images to generate: 1, 2, or 4
Reference image URLs, max 5 images
Example
Text-to-Image
curl -X POST "https://api.apixo.ai/api/v1/generateTask/gpt-image-1" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"request_type": "async",
"input": {
"mode": "gpt-image-1",
"prompt": "a cozy cyberpunk cafe with neon lights",
"aspect_ratio": "3:2",
"num_images": 2
}
}'
Reference-Guided Generation
curl -X POST "https://api.apixo.ai/api/v1/generateTask/gpt-image-1" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"request_type": "async",
"provider": "official",
"input": {
"mode": "gpt-image-1",
"prompt": "a futuristic cityscape at sunset",
"aspect_ratio": "3:2",
"num_images": 4,
"image_urls": [
"https://example.com/ref1.jpg",
"https://example.com/ref2.jpg"
]
}
}'
Response
POST /api/v1/generateTask/gpt-image-1
При успехе возвращает taskId для последующих запросов статуса.
Success:
{
"code" : 200 ,
"message" : "success" ,
"data" : {
"taskId" : "task_12345678"
}
}
Error:
{
"code" : 400 ,
"message" : "Insufficient credits" ,
"data" : null
}
GET /api/v1/statusTask/gpt-image-1
Запрос статуса выполнения задачи и результатов по taskId.
curl -X GET "https://api.apixo.ai/api/v1/statusTask/gpt-image-1?taskId=task_12345678" \
-H "Authorization: Bearer YOUR_API_KEY"
Success:
{
"code" : 200 ,
"message" : "success" ,
"data" : {
"taskId" : "task_12345678" ,
"state" : "success" ,
"resultJson" : "{ \" resultUrls \" :[ \" https://r2.apixo.ai/xxx.png \" , \" https://r2.apixo.ai/yyy.png \" ]}" ,
"createTime" : 1767965610929 ,
"completeTime" : 1767965652317 ,
"costTime" : 41388
}
}
Failed:
{
"code" : 200 ,
"message" : "success" ,
"data" : {
"taskId" : "task_12345678" ,
"state" : "failed" ,
"failCode" : "CONTENT_VIOLATION" ,
"failMsg" : "Content does not meet safety guidelines"
}
}
Status Response Fields
Уникальный идентификатор задачи.
Текущее состояние задачи: pending, processing, success или failed.
JSON-строка с массивом resultUrls. Присутствует только при success. Парсите через JSON.parse().
Код ошибки. Присутствует только при state=failed. См. Error Codes .
Читаемое сообщение об ошибке. Присутствует только при state=failed.
Timestamp создания задачи (Unix миллисекунды).
Timestamp завершения задачи (Unix миллисекунды).
Длительность обработки в миллисекундах.
Error Codes
Code Description 400 Неверные параметры или ошибка запроса 401 Недействительный или отсутствующий API Key 429 Превышен лимит запросов
Fail Code Description CONTENT_VIOLATIONКонтент нарушает правила безопасности INVALID_IMAGE_URLНе удаётся получить доступ к URL изображения
Rate Limits
Limit Value Requests 10000 / minute Concurrent tasks 1000
При превышении возвращается ошибка 429. Подождите и повторите.
Tips
Generation time : Average ~30 seconds. Submit task, wait 20 seconds, then poll every 3 seconds.
Callback mode : При высокой конкуренции используйте режим callback вместо частого polling.
Image expiration : Result URLs are valid for 15 days. Скачивайте и сохраняйте важные результаты вовремя.
Content moderation : Prompts must comply with content safety guidelines. Violations return CONTENT_VIOLATION.
Reference images : image_urls supports JPG, PNG, WebP formats, max 10MB per image.
Batch generation : num_images supports 1/2/4, billed per generated image.
Aspect ratio selection : 1:1 for avatars/social media, 3:2 for landscape posters, 2:3 for portrait posters.
Result URLs expire after 15 days. Скачивайте и сохраняйте важные результаты вовремя. При высокой конкуренции используйте режим callback вместо частого polling.