Docs

Инструменты через API

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

Те же инструменты, что и в кабинете, доступны программно. Каждый вызов списывается с вашего кошелька так же, как работа через интерфейс: подписка, затем пакет, затем оплата по факту. Чтение (GET) не списывается никогда.

Базовый URL: https://developers.grem.capital/api/v1.

Перечень инструментов

ВызовScope ключаКак работает
POST /valuation/expressлюбой ключсинхронно
POST /valuation/reporttools:valuationотложенно
POST /valuation/renttools:rentсинхронно
POST /valuation/reviewtools:reviewотложенно, с файлом
POST /content/generatetools:contentgenотложенно
POST /text/generatetools:textотложенно
POST /avatar/videotools:avatarотложенно
POST /video/createtools:videoотложенно, с файлом
POST /photo/enhancetools:photoотложенно, с файлом
POST /floorplan/createtools:floorplanотложенно, с файлом
POST /draft/extracttools:draftсинхронно, с файлом
POST /site/createtools:sitegenсинхронно, нужен объект
POST /pdf/createtools:pdfотложенно, нужен объект

Если у ключа нет нужного scope, вызов вернёт 403. Scope выдаются при создании ключа в кабинете: AI-инструменты → API → Ключи. См. Аутентификацию.

Синхронные вызовы

Синхронный инструмент возвращает 200 и готовый результат в теле ответа:

curl -X POST https://developers.grem.capital/api/v1/valuation/rent \
  -H "Authorization: Bearer gsk_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{"propertyCategory":"apartment","totalArea":50,"city":"Kyiv"}'

Отложенные вызовы

Долгие инструменты (отчёт об оценке, тексты, фото, видео, аватар, планировка, PDF) возвращают 202 и ссылку на задачу:

{ "jobId": "…", "status": "pending", "requestId": "req_…" }

Дальше опрашивайте статус по адресу GET /<путь инструмента>/jobs/{jobId}:

curl -H "Authorization: Bearer gsk_live_xxx" \
  https://developers.grem.capital/api/v1/content/generate/jobs/JOB_ID

В ответе есть поле status. Завершённые состояния: completed (либо done, success) и failed. Пока задача выполняется, повторяйте запрос раз в несколько секунд.

Опрос бесплатный: GET не считается вызовом API и не списывается с кошелька. Но вместо плотного опроса лучше подписаться на событие - см. Вебхуки.

Каждая задача принадлежит тому ключу, который её создал. Чужой jobId всегда возвращает 404, даже если такая задача существует.

Инструменты с файлом

Вызовы, помеченные «с файлом», принимают multipart/form-data: параметры - в текстовом поле data в виде JSON, сам файл - отдельной частью.

curl -X POST https://developers.grem.capital/api/v1/photo/enhance \
  -H "Authorization: Bearer gsk_live_xxx" \
  -F 'data={"mode":"enhance"}' \
  -F "image=@room.jpg"

Если отправить таким инструментам обычный JSON, в ответ придёт 400 с пояснением, что ожидается multipart/form-data.

Инструменты, которым нужен объект

Генератор сайтов и генератор PDF собирают презентацию из уже существующего объявления, поэтому в теле запроса обязателен objectId (или collectionId для подборки). Объект должен принадлежать вам - чужой идентификатор даст ошибку доступа.

curl -X POST https://developers.grem.capital/api/v1/pdf/create \
  -H "Authorization: Bearer gsk_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{"objectId":"64f…","language":"ru"}'

Готовые файлы

Результаты (PDF, видео, изображения, страницы) отдаются ссылками на домен GREM. Скачивайте их через GET /artifacts/… с тем же ключом - см. Файлы и готовые результаты.

Повторный вызов без дублей

Создание задачи безопасно повторять: отправьте заголовок Idempotency-Key, и повтор с тем же ключом вернёт прежний результат вместо второго списания. Подробности - в статье Идемпотентность.

Что делать с ошибками

  • 402 - на кошельке недостаточно средств или исчерпана квота плана.
  • 403 - у ключа нет scope для этого инструмента.
  • 429 - превышен лимит частоты, повторите после паузы из заголовка Retry-After.

Полный перечень - в статье Ошибки.

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

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