Создайте поездку и получите токен поездки.

Для безопасного запуска сеанса пошаговой навигации для водителя ваша серверная часть должна создать поездку и получить аутентифицированный токен поездки от API Navigation Connect.

В Navigation Connect поездка представляет собой сеанс навигации к одному пункту назначения. Чтобы создать поездку и получить аутентифицированный токен поездки ( authToken ), необходимый для авторизации сеанса, отправьте сообщение CreateTripRequest методу CreateTrip . Передайте токен поездки в ваше мобильное приложение, чтобы включить его в URL-адрес запуска Google Maps или Waze.

В этом руководстве описано, как выполнить этот процесс, сгенерировав уникальный идентификатор поездки и отправив запрос к API.

Сформируйте сообщение CreateTripRequest

Для создания поездки и получения токена поездки выполните следующие шаги, чтобы сформировать и отправить сообщение CreateTripRequest :

  1. Аутентификация : Используйте учетные данные приложения по умолчанию (ADC) для получения токена доступа, необходимого для авторизации вашего запроса. Дополнительные сведения см. в разделе «Создание токена OAuth» .
  2. Сгенерируйте идентификатор поездки : создайте уникальный идентификатор поездки ( tripId ) в формате UUIDv4 для идентификации поездки на вашем сервере.
  3. Создание полезной нагрузки : Создайте полезную нагрузку в формате JSON, которая включает идентификаторы вашего приложения и параметры конфигурации.
  4. Вызовите метод CreateTrip : отправьте POST-запрос к API, указав токен доступа в заголовке и полезную нагрузку в теле запроса.

В следующем примере показано, как создать поездку, отправив сообщение CreateTripRequest :

#!/bin/bash

# Authenticate with ADC
access_token="$(gcloud auth application-default login --impersonate-service-account=SERVICE_ACCOUNT_EMAIL)"

# Generate a unique Trip ID
trip_id="$(uuidgen)"

# Construct the payload
payload=$(cat <<EOF
{
  "androidAppId": "ANDROID_APP_ID",
  "iosAppId": "IOS_APP_ID",
  "config": {
    "enablePubsub": true
  }
}
EOF
)

# Call the CreateTrip method to request a trip token
curl -X POST "https://navigationconnect.googleapis.com/v1/projects/PROJECT_ID/trips?tripId=${trip_id}" \
-H "Authorization: Bearer ${access_token}" \
-H "Content-Type: application/json" \
-d "${payload}"

Дополнительные конфигурации

Вы можете настроить данные о поездке, изменив следующие параметры в сообщении CreateTripRequest :

Особенность Тип Описание
Информация об оставшихся участках маршрута (только в Waze) boolean

Чтобы получать информацию об активной полилинии маршрута и дорожной ситуации в реальном времени, установите config.enableRemainingRouteReporting в true .

Частота обновления данных о поездках boolean

По умолчанию Navigation Connect обновляет данные о поездках каждые 60 секунд. Чтобы включить более частые обновления (каждые 5 секунд), установите config.enableHighFrequencyUpdates в true .

Генерация событий Google Cloud Pub/Sub boolean

Чтобы включить генерацию событий поездок с помощью Google Cloud Pub/Sub, установите config.enablePubsub в true . Эта функция отключена по умолчанию.

Маска поля Google Cloud Pub/Sub FieldMask

Для управления размерами полезной нагрузки и снижения нагрузки на серверную часть или затрат на использование Google Cloud Pub/Sub используйте config.pubsubFieldMask , чтобы исключить из потока событий поля с большим объемом данных (например, execution.remainingRoute ). Дополнительную информацию о размере полезной нагрузки для данных оставшегося маршрута см. в разделе «Обработка данных оставшегося маршрута» .

Получите токен поездки из ответа.

Метод CreateTrip возвращает ответ, содержащий токен авторизованной поездки. Для авторизации сеанса навигации извлеките этот токен из ответа и передайте его в ваше мобильное приложение, чтобы включить его в URL-адрес запуска.

Приведённый ниже пример кода демонстрирует образец ответа:

{
    "name": "projects/PROJECT_NUMBER/trips/TRIP_ID",
  "authToken": {
    "token": "BASE64_ENCODED_TRIP_TOKEN",
    "expireTime": "2026-03-06T11:09:47.476942Z"
  },
  "state": "NEW",
  "execution": {
    "traveledDistanceMeters": 0,
    "stopAddedInRoute": false
  },
  "createTime": "2026-03-05T23:09:50.768959Z",
  "updateTime": "2026-03-05T23:09:50.768959Z"
}

Данный ответ содержит следующие значения:

  • PROJECT_NUMBER : Уникальный числовой идентификатор вашего проекта. Он отличается от буквенно-цифрового идентификатора проекта, но представляет собой тот же проект Google Cloud.
  • TRIP_ID : Идентификатор поездки, сгенерированный вашей серверной частью в формате UUIDv4.
  • BASE64_ENCODED_TRIP_TOKEN : Аутентифицированный токен поездки ( authToken.token ), возвращаемый методом CreateTrip . Передайте этот токен в ваше мобильное приложение, чтобы запустить отслеживаемую пошаговую навигацию в Google Maps или Waze.

Что дальше?

Используйте токен поездки, чтобы запустить Google Maps или Waze.

Запустите Google Maps или Waze.