RealIQДанные · Риски · Решения
← API RealIQ

POST /api/v1/checks/quote

Предрасчёт стоимости проверки

Метод показывает стоимость одной проверки или пакета без запуска источников. Его используют перед оплатой, чтобы CRM могла заранее показать цену и проверить достаточность баланса.

Кратко для ИИ

Метод показывает стоимость одной проверки или пакета без запуска источников. Его используют перед оплатой, чтобы CRM могла заранее показать цену и проверить достаточность баланса.

Когда использовать

Перед кнопкой “Запустить проверку”, при массовом расчёте стоимости или при проверке баланса до боевого запуска.

Карта методов

Связанные методы

Эта страница описывает группу связанных методов. Для точной схемы параметров используйте Swagger, для продуктовой логики — блоки ниже.

POST/api/v1/checks/quote

Рассчитать стоимость одиночной проверки или пакета без запуска источников.

Сценарий

Как проходит сценарий

Шаг 1

Передайте типы проверок

Отправьте type или items[] с нужными типами проверок.

Шаг 2

Получите стоимость

API вернёт цену по тарифу, стоимость мониторинга и флаг balance_sufficient.

Шаг 3

Решите, запускать ли проверку

Если баланса хватает, запускайте /checks или /checks/bulk с теми же данными.

Обязательные поля

ПолеОбяз.Описание
typeНетТип одиночной проверки: продавец, объект или комплексная проверка.
items[]НетМассив проверок для пакетного расчёта, до 50 элементов.
items[].typeДаТип каждого элемента пакетного расчёта.

Пример curl

curl -X POST https://api.realiq.ru/api/v1/checks/quote \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: riq_live_xxx" \
  -d '{"items":[{"type":"seller"},{"type":"object"},{"type":"full"}]}'

JSON-запрос

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

Для GET-методов показано JSON-представление URL, query-параметров и заголовков. Для загрузки файла показана структура form-data.

{
  "items": [
    { "type": "seller" },
    { "type": "object" },
    { "type": "full" }
  ]
}

JSON-ответ

Пример успешного JSON-ответа

Пример отражает структуру реального ответа API. Значения ID, SHA и ссылок сокращены или заменены демонстрационными.

{
  "items": [
    {
      "index": 0,
      "type": "seller",
      "price_amount": 390,
      "amount": 390,
      "monitoring_cycle_amount": 234
    },
    {
      "index": 1,
      "type": "object",
      "price_amount": 290,
      "amount": 290,
      "monitoring_cycle_amount": 174
    },
    {
      "index": 2,
      "type": "full",
      "price_amount": 650,
      "amount": 650,
      "monitoring_cycle_amount": 390
    }
  ],
  "total_price_amount": 1330,
  "total_amount": 1330,
  "currency": "RUB",
  "balance": 12410,
  "balance_sufficient": true,
  "tier_name": "Старт",
  "mode": "live",
  "request_id": "req_1780000000_abcd"
}

Полный JSON-ответ

Полный пример ответа

Развёрнутый пример показывает, какие блоки обычно получает интегратор. Значения ID, SHA, ссылок и персональных данных демонстрационные.

{
  "items": [
    {
      "index": 0,
      "type": "seller",
      "price_amount": 390,
      "amount": 390,
      "monitoring_cycle_amount": 234
    },
    {
      "index": 1,
      "type": "object",
      "price_amount": 290,
      "amount": 290,
      "monitoring_cycle_amount": 174
    },
    {
      "index": 2,
      "type": "full",
      "price_amount": 650,
      "amount": 650,
      "monitoring_cycle_amount": 390
    }
  ],
  "total_price_amount": 1330,
  "total_amount": 1330,
  "currency": "RUB",
  "balance": 12410,
  "balance_sufficient": true,
  "tier_name": "Старт",
  "mode": "live",
  "request_id": "req_1780000000_abcd"
}

Поля ответа

Как читать поля ответа

ПолеЧто означает
items[]Расчёт по каждому элементу запроса. Для одиночного расчёта будет один элемент.
price_amountЦена по тарифу до учёта тестового режима.
amountСколько будет списано при запуске. В тестовом режиме всегда 0.
monitoring_cycle_amountСтоимость одного цикла мониторинга для этого типа проверки.
balance_sufficienttrue означает, что текущего баланса хватит на запуск.
request_idID обращения к API; нужен для поддержки и журналирования.

Ошибки

Типовые ошибки метода

HTTP 400invalid_check_type

Передан неподдерживаемый тип проверки.

Что делать: Используйте допустимый тип проверки.

{
  "error_code": "invalid_check_type",
  "message": "Передан неподдерживаемый тип проверки.",
  "request_id": "req_1780000000_abcd"
}
HTTP 401unauthorized

Не передан или неверен X-API-KEY.

Что делать: Проверьте API-ключ и режим работы.

{
  "error_code": "unauthorized",
  "message": "Не передан или неверен X-API-KEY.",
  "request_id": "req_1780000000_abcd"
}
HTTP 422validation_error

Некорректная структура items.

Что делать: Передайте от 1 до 50 элементов.

{
  "error_code": "validation_error",
  "message": "Некорректная структура items.",
  "request_id": "req_1780000000_abcd"
}

Ответ processing

{
  "mode": "live",
  "total_amount": 1330,
  "balance_sufficient": true,
  "items": [
    { "type": "seller", "amount": 390 },
    { "type": "object", "amount": 290 },
    { "type": "full", "amount": 650 }
  ],
  "request_id": "req_..."
}

Ответ report_ready

{
  "mode": "sandbox",
  "total_amount": 0,
  "balance_sufficient": true,
  "items": [{ "type": "seller", "price_amount": 390, "amount": 0 }]
}

Пример ошибки

{
  "error_code": "invalid_check_type",
  "message": "Поддерживаются seller, object, full.",
  "request_id": "req_..."
}

Что списывается с баланса

Ничего не списывается. Тестовый режим возвращает amount=0, боевой режим возвращает цену по тарифу.

Какие поля доказательного блока вернутся

  • Доказательный блок не создаётся, потому что источники не запускаются.
  • request_id фиксирует API-вызов в журнале.