Аутентификация
Все запросы требуют API-ключ в заголовке Authorization.
Ключи создаются в портале в разделе «API Keys». Каждый ключ привязан к вашему аккаунту и имеет собственные лимиты.
Построение маршрута между двумя точками с учетом типа транспорта. Поддерживает до 20 промежуточных точек (waypoints).
| Параметр | Тип | Обязателен | По умолчанию | Описание |
|---|---|---|---|---|
| from | object | Да | — | Начальная точка {lat, lon} |
| to | object | Да | — | Конечная точка {lat, lon} |
| waypoints | array | Нет | — | Промежуточные точки (до 20). Массив объектов {lat, lon} |
| mode | string | Нет | "car" | Тип транспорта: car, foot, bike |
| alternatives | boolean | Нет | false | Возвращать альтернативные маршруты |
| steps | boolean | Нет | false | Включить пошаговые инструкции |
| language | string | Нет | "en" | Язык инструкций: en, ru |
Прямой геокодинг — поиск координат по текстовому адресу.
| Параметр | Тип | Обязателен | По умолчанию | Описание |
|---|---|---|---|---|
| q | string | Да | — | Поисковый запрос (адрес, название места) |
| limit | integer | Нет | 5 | Максимальное количество результатов (1-20) |
| language | string | Нет | "en" | Язык результатов: en, ru |
| countrycodes | string | Нет | — | Ограничить поиск странами (ISO 3166-1 alpha-2) |
Обратный геокодинг — получение адреса по координатам.
| Параметр | Тип | Обязателен | По умолчанию | Описание |
|---|---|---|---|---|
| lat | number | Да | — | Широта (-90 до 90) |
| lon | number | Да | — | Долгота (-180 до 180) |
| language | string | Нет | "en" | Язык результата: en, ru |
| zoom | integer | Нет | 18 | Уровень детализации (0-18) |
Установка
Flutter SDK для навигации, маршрутизации, геокодинга и интерактивных карт на базе MapLibre GL.
Инициализируйте SDK перед использованием. URL тайлов загружается автоматически.
Виджет интерактивной карты с поддержкой жестов, маркеров и маршрутов.
| Параметр | Тип | Описание |
|---|---|---|
| controller | BaseMapController? | Контроллер карты |
| options | MapOptions | Конфигурация карты |
| markers | List<Marker> | Маркеры для отображения |
| clusterOptions | MarkerClusterOptions? | Настройки кластеризации |
| routeLines | List<RouteLine> | Линии маршрутов |
| onMapTap | Function(Coordinates) | Callback нажатия на карту |
| onMarkerTap | Function(Marker) | Callback нажатия на маркер |
Разнообразные типы маркеров: стандартные, нумерованные, анимированные, с кастомными иконками.
Расчёт и отображение маршрутов между точками.
| Режим | Описание |
|---|---|
| TransportMode.car | Автомобиль |
| TransportMode.bike | Велосипед |
| TransportMode.foot | Пешком |
| TransportMode.truck | Грузовик (с ограничениями) |
Прямой и обратный геокодинг через SDK.
Ошибки
При возникновении ошибки API возвращает JSON с информацией об ошибке:
| HTTP код | Описание |
|---|---|
| 400 | Неверные параметры запроса |
| 401 | Отсутствует или неверный API-ключ |
| 403 | Доступ запрещен (ключ деактивирован) |
| 429 | Превышен лимит запросов |
| 500 | Внутренняя ошибка сервера |
Лимиты
Каждый запрос потребляет определенное количество единиц (units):
| Эндпоинт | Units |
|---|---|
| /v1/route | 5 |
| /v1/geocode | 1 |
| /v1/reverse | 1 |
Лимиты зависят от вашего тарифного плана. Текущее использование можно отслеживать в разделе «Usage» личного кабинета.