POST /v1/images/edits
Multipart-редактирование изображений с закрытыми результатами операций.
Редактируйте существующие изображения через настроенный маршрут image.edit. Эндпоинт принимает multipart form data, а не JSON с URL изображений.
Передайте model, prompt, поддержанные маршрутом скалярные настройки и либо одно поле image, либо повторяющиеся файловые части image[]. Необязательная mask — один файл, MIME, размеры и требуемые свойства альфа-канала которого должны соответствовать выбранному проверенному контракту. Маршрут может запрещать маски, требовать совпадения размеров входных изображений или ограничивать форматы и количество входных файлов. Для асинхронного выполнения добавьте model_gate как JSON-строку, например {"async":true}.
Используйте обычный заголовок Authorization и обязательный Idempotency-Key. Имена файлов и переданные типы содержимого не отменяют проверку байтов. Поддерживаются только статические PNG/JPEG/WebP: не более 16 МиБ на файл, 32 МиБ входных байтов и 16 миллионов пикселей на изображение. Анимация, повреждённые файлы, повторные скалярные поля и неподдержанные настройки отклоняются до платной отправки. Серверные лимиты запроса могут быть меньше.
Ответ и опрос совпадают с генерацией. Сохраните идентификатор операции и повторно используйте тот же ключ идемпотентности после тайм-аута клиента; не отправляйте новое платное редактирование для получения уже существующего результата. Исходные файлы не выдаются API скачивания результатов. См. операции с изображениями.
Вкладка Images в Playground формирует настоящий multipart-запрос редактирования, не раскрывая постоянные секреты API. Необязательный model_gate.quote_sha256 связывает запуск с предыдущим бесплатным расчётом цены; метаданные входов для расчёта не заменяют проверку самих файлов.
Расчёт цены и суммы для Usage Limit — предварительные значения. Вычисленная стоимость также отличается от завершённого изменения баланса. Доступность сохранённых файлов требует существующего файла и неистёкшего окна скачивания. Общие количества токенов могут появляться в reported_tokens с token_usage_status=aggregate_only_not_priced; они не заменяют отсутствующую разбивку по модальностям для токенной тарификации. См. поля ответа генерации.
Ошибки запросов изображений
Ошибки содержат стабильный error.code, понятный error.message, error.type и, где применимо, error.param. Сохраните X-Request-ID из ответа для поддержки; не отправляйте API-ключ. Неизвестная каноническая модель или псевдоним возвращают 400 model_not_found, а не ошибку доступности каталога.
| HTTP | Код | Действие |
|---|---|---|
| 400 | model_not_found | Проверьте ID модели или псевдоним. |
| 400 | unsupported_parameter / unsupported_value / incompatible_parameters | Исправьте указанный параметр по контракту маршрута; ответ может содержать разрешённые значения. |
| 422 | image_route_not_available | Проверьте или уберите явный route_id. |
| 503 | image_route_unavailable | Сейчас нет доступного проверенного маршрута; обратитесь в поддержку. |
| 503 | image_configuration_unavailable | Настройки или цены маршрута недоступны; обратитесь в поддержку. |
| 503 | image_catalog_unavailable | Ошибка серверной части каталога. |
Ограничения нескольких маршрутов не объединяются в выдуманные допустимые комбинации. Не повторяйте платный POST автоматически после тайм-аута или неоднозначной ошибки. Проверьте статус операции и сохраните исходный ключ идемпотентности. Подробные внутренние ошибки конфигурации и учётных данных клиенту не возвращаются.