MorphogenДокументация
API

Images

POST /v1/images/generations: генерация картинок.

POST/v1/images/generations

Генерирует картинки по текстовому описанию. Формат совместим с OpenAI Images: работает client.images.generate(...). Ответ синхронный, картинка приходит в теле как b64_json. Хостинга картинок нет, режим response_format: "url" не поддерживается.

Заголовки

ЗаголовокЗначение
AuthorizationBearer <ключ>. Обязателен. Вместо него принимается x-api-key: <ключ>
Content-Typeapplication/json
X-Morphogen-Spacespc_…: пространство расхода. Необязательный

Тело запроса

modelstringобязательный

Модель картинок из GET /v1/models: например flux-2-klein или gpt-image-1-mini.

promptstringобязательный

Описание картинки.

ninteger

Число картинок, от 1 до 10. По умолчанию 1.

sizestring

Размер, например 1024x1024. Допустимые значения зависят от модели.

qualitystring

Качество, например low. Поддерживают не все модели.

aspect_ratiostring

Соотношение сторон, например 16:9.

output_formatstring

Формат файла: png, jpeg или webp, если модель их поддерживает.

seedinteger

Зерно для воспроизводимости, если модель его принимает.

input_referencesarray

Исходные картинки для моделей, которые умеют редактирование.

Потоковый режим не поддерживается, stream: true даёт 400. Маскирования ПДн у картинок нет: промпт уходит модели без изменений, а явный X-PII-Masking: on даёт 400.

Пример запроса

curl https://api.morphogen.ru/v1/images/generations \
  -H "Authorization: Bearer $MORPHOGEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "flux-2-klein",
    "prompt": "красное яблоко на белом столе"
  }' | jq -r '.data[0].b64_json' | base64 -d > apple.jpg

Пример ответа

{
  "created": 1760104212,
  "data": [{ "b64_json": "/9j/4AAQSkZJRgABAQ...", "media_type": "image/jpeg" }],
  "usage": { "cost": 0.014 }
}

В примере строка b64_json сокращена. Картинки весят мегабайты, поэтому ответ не буферизуется и приходит целиком.

Ошибки

400unsupported_response_formatЗапрошен response_format: "url". Поддерживается только b64_json.
400image_streaming_unsupportedВ запросе stream: true.
400invalid_image_countn не целое число от 1 до 10.
400model_category_mismatchМодель не из категории картинок.
400pii_masking_unsupported_endpointВ запросе X-PII-Masking: on.
401invalid_api_keyКлюч не передан, неверный, отозван или истёк.
402insufficient_fundsНа балансе не хватает денег на резерв запроса.
403model_not_allowedМодели нет в списке ключа.
404model_not_foundТакой модели нет в каталоге.
429rate_limit_exceededПревышен лимит запросов в минуту.

Остальные коды: Ошибки. Руководство: Картинки и видео.

На этой странице