Skip to Content
ДокументацияНачало интеграции

Начало интеграции

Профессиональная интеграция с Frigolive охватывает три отдельные границы доверия: Frigolive Public API, ваш бэкенд-сервис и ваш веб- или мобильный интерфейс. Долговечные учетные данные клиента (client credentials) хранятся исключительно на уровне бэкенда. Интерфейс никогда не имеет доступа к секрету клиента Frigolive.

Подготовка доступа

Frigolive — или авторизованный администратор клиента — создает учетные данные для интеграции. Эта запись определяет, к каким реальным клиентским аккаунтам открыт доступ, какие операции (области доступа / scopes) разрешены и, при необходимости, из каких диапазонов IP-адресов принимаются запросы.

Учетные данные создаются в разделе Настройки → Учетные данные API (Settings → API Credentials) панели Frigolive; там же можно ротировать секрет и отозвать учетные данные.

Вы сохраняете секрет клиента, отображаемый ровно один раз, в своем защищенном хранилище секретов. Утерянный секрет нельзя посмотреть повторно: генерируется новый секрет, а старый контролируемо выводится из обращения.

В процессе работы интеграции

Ваш бэкенд-сервис обменивает свои сервисные учетные данные на краткосрочный токен доступа (access token) и кэширует его в оперативной памяти. Сначала он запрашивает список аккаунтов, доступных данной учетной записи. Если доступно более одного аккаунта, каждый запрос данных явно указывает целевой аккаунт в заголовке X-Frigolive-Account-ID.

Frigolive не полагается слепо на переданный идентификатор аккаунта. Система повторно проверяет, что аккаунт входит в список разрешенных (allow-list), токен содержит требуемый scope, а запрашиваемый ресурс действительно принадлежит этому тенанту. Попытка угадать ID устройства не предоставит доступ.

Подключение вашего приложения (паттерн BFF)

Браузеры ваших пользователей аутентифицируются на вашем бэкенде с помощью ваших собственных сессий. То, какой конечный пользователь может видеть то или иное устройство, определяется вашим уровнем авторизации. Бэкенд запрашивает необходимые данные у Frigolive по каналу server-to-server и преобразует их в структуры данных вашего продукта.

Public API v1 охватывает аккаунты, локации, перевозчиков, получателей, шаблоны оповещений, шаблоны отправок, устройства, телеметрию, историю обслуживания, отправки, тревоги, отчеты и пользователей. Не каждой интеграции предоставляются все эти права. Frigolive открывает только те аккаунты и области доступа, которые соответствуют контракту и назначению. После подключения в справочнике API будут отмечены операции, на которые у вашего токена нет прав.

Вы можете изменять метки устройств, управлять пользовательскими настройками измерений и тревог, а также управлять отправками и связанными записями. IMEI, SIM-карты, прошивки, владение устройствами, производственные тесты и администрирование платформы находятся за рамками контракта Public API.

Чек-лист перед запуском в продакшн

  1. Используйте отдельные учетные данные для разработки и продакшна.
  2. Исключите секреты клиентов из логов приложения.
  3. Дедуплицируйте обновление токенов в фоновом режиме, чтобы одновременно выполнялся только один запрос на получение токена.
  4. Учитывайте время ожидания, возвращаемое при превышении лимитов частоты запросов (rate limits).
  5. Добавьте тесты изоляции тенантов в пайплайн CI.
  6. Передавайте уникальный заголовок Idempotency-Key при каждом POST-запросе, создающем запись.
  7. Передавайте идентификатор действующего конечного пользователя для журнала аудита через заголовок X-Frigolive-End-User-ID.

Примеры кода, точные параметры, примеры на пяти языках бэкенда и интерактивная панель тестирования доступны в Справочнике API.