Документация ENL API v2
Базовый URL: https://api.enginenearlife.ru. Все ответы в формате JSON, кодировка UTF-8. Тело запроса (где требуется) — application/json.
Аутентификация
Все запросы должны содержать заголовок Authorization: Bearer <token>. Токен можно получить по запросу на api@enginenearlife.ru.
Токены не истекают автоматически. При компрометации — сообщите нам для замены.
Лимиты запросов
Rate limiting применяется на уровне токена. Текущие лимиты:
| Тариф | Запросов/мин | Запросов/день |
|---|---|---|
| Базовый | 120 | 50 000 |
| Расширенный | 600 | 500 000 |
| Неограниченный | — | — |
При превышении лимита API возвращает 429 Too Many Requests. Заголовок Retry-After содержит секунды до сброса окна.
Коды ошибок
| HTTP | code | Описание |
|---|---|---|
| 400 | invalid_params | Неверные или отсутствующие параметры запроса |
| 401 | unauthorized | Токен отсутствует или недействителен |
| 403 | forbidden | Токен не имеет доступа к данному эндпоинту |
| 404 | not_found | Ресурс не найден |
| 429 | rate_limited | Превышен лимит запросов |
| 500 | internal_error | Внутренняя ошибка сервера |
| 503 | unavailable | Сервис временно недоступен |
Тело ошибки всегда содержит поле error.code и error.message:
Версионирование
Версия API указывается в пути: /v2/.... Текущая стабильная версия — v2. Версия v1 поддерживается до 2026-09-01, после чего будет отключена.
/geo/lookup — поле city перемещено в result.address_components.city.GET /v2/geo/lookup
Геокодирование адреса — получение координат по строке адреса.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
q | string | да | Строка адреса для поиска |
lang | string | нет | ru (по умолч.) или en |
limit | int | нет | Макс. результатов, 1–10 (по умолч. 5) |
GET /v2/geo/reverse
Обратное геокодирование — получение адреса по координатам.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
lat | float | да | Широта, −90…90 |
lon | float | да | Долгота, −180…180 |
lang | string | нет | ru или en |
POST /v2/route/build
Построение маршрута между двумя и более точками.
POST /v2/telemetry/push
Запись показателей датчиков. Принимает батч до 1000 точек за запрос.
GET /v2/analytics/summary
Агрегированная статистика за период по устройству или группе.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
device_id | string | да* | UUID устройства или group:<name> |
from | ISO 8601 | да | Начало периода |
to | ISO 8601 | да | Конец периода |
tz | string | нет | Часовой пояс (по умолч. UTC) |
GET /v2/analytics/heatmap
Данные тепловой карты активности за период. Возвращает массив ячеек с координатами и весом. Параметр resolution задаёт размер ячейки: 50m, 200m, 1km, 5km.