Docs

Фото и планировки

Последнее обновление: 2026-10-033 мин чтения

Оба инструмента принимают файл в multipart/form-data.

Улучшение фото

POST /photo/enhance - область tools:photo, задача. Одно фото за запрос.

Части формы:

ЧастьОписание
imageфото - обязательное; JPEG, PNG или WebP до 25 МБ
maskтолько для cleanup: PNG-маска, белое - область, которую нужно изменить
dataпараметры одной JSON-строкой - обязательное

Параметры в data:

ПолеОписание
modeenhance - свет, цвет, резкость; cleanup - убрать лишнее; staging - обставить пустую комнату. По умолчанию cleanup
promptдля cleanup и staging обязателен (3-500 символов): что убрать или как обставить; для enhance необязателен
intensitylight, medium (по умолчанию), strong
roomTypeliving, bedroom, kitchen, bathroom, dining, office, outdoor
furnitureStyleдля staging: modern, scandinavian, industrial, luxury, minimalist, coastal
autoMaskcleanup без своей маски: найти область автоматически
seedчисло для повторяемого результата
negativePromptчего избегать, до 300 символов
objectId, objectTypeваш объект, которому принадлежит фото (property или complex)
curl -X POST https://developers.grem.capital/api/v1/photo/enhance \
  -H "Authorization: Bearer gsk_live_xxx" \
  -F 'data={"mode":"cleanup","prompt":"remove the chair and the boxes"}' \
  -F "[email protected]"

Маска с режимом enhance или staging отклоняется - там она не работает, и деньги не списываются. Цена зависит от режима. Отказы: маска вне cleanup - 422 с code: MASK_NOT_SUPPORTED; другой тип файла или файл больше 25 МБ - 422 с code: JOB_CREATE_FAILED; неизвестный ключ в data - 400. Ответ на запуск содержит sku и priceMinor - сколько списывается за вызов (нет, если его покрывает квота плана).

Ответ 202 с jobId. Готовая задача (GET /photo/enhance/jobs/{id}):

ПолеОписание
resultsварианты результата
results[].variantномер варианта
results[].urlадрес изображения
results[].width, results[].heightразмер
metadata.errorу задачи со сбоем: причина, общим текстом

Файл варианта: GET /artifacts/v1/ai/photo-enhancement/jobs/{jobId}/download/{variant}. События - photo.completed / photo.failed.

Очистка планировки

POST /floorplan/create - область tools:floorplan. Фото или скан плана превращается в чистый план с подписями комнат и площадями. Обработка происходит сразу: ответ 202 уже содержит итог.

ЧастьОписание
fileизображение плана (JPEG, PNG, WebP, HEIC; до 20 МБ) - обязательное; принимается и название image
objectIdприкрепить результат к вашему объекту
objectTypeproperty, rental или complex
curl -X POST https://developers.grem.capital/api/v1/floorplan/create \
  -H "Authorization: Bearer gsk_live_xxx" \
  -F "[email protected]"

Ответ:

ПолеОписание
jobIdid задачи
statusdone - подписи приняты автоматически; review - результат готов, но подписи стоит проверить; rejected - на изображении не план; failed - сбой
statecompleted для done и review, failed для rejected и failed
roomsкомнаты: label, area (м², если подписана), stable (подпись прочитана одинаково при каждом проходе), placement (где подпись стоит на очищенном плане)
totalAreaобщая площадь, м², если площади подписаны на плане
cleanedFileIdочищенное изображение плана
sourceFileIdзагруженный вами план

Отчет: GET /artifacts/v1/ai/floor-plan/jobs/{id}/report.pdf. Повторно получить результат - GET /floorplan/create/jobs/{id}. События - floorplan.completed / floorplan.failed. Если на изображении не план, деньги не списываются.

Связанные статьи

Эта статья была полезной?