Navigation Connect を設定する

欧州経済領域(EEA)のデベロッパー

このドキュメントでは、Navigation Connect の使用を開始するために必要な手順について説明します。

Google Maps Platform サービスでは、API 呼び出しに OAuth トークンを含めることを必須にすることで、不正使用を防止しています。

OAuth トークンを作成する

Navigation Connect は、認証に OAuth 2.0 を使用することをサポートしています。Google は、ウェブサーバーなど、OAuth 2.0 の一般的なシナリオに対応しています。

このドキュメントでは、開発環境で OAuth トークンを Navigation Connect 呼び出しに渡す方法について説明します。本番環境で OAuth を使用する手順については、Google での認証方法をご覧ください。

OAuth について

OAuth を使用してアクセス トークンを作成して管理する方法は、デプロイ環境に応じて多数あります。

たとえば、Google OAuth 2.0 システムは、アプリケーションと Google サービス間のインタラクションなど、サーバー間のインタラクションをサポートしています。このシナリオでは、個々のエンドユーザーではなく、アプリケーションに属するアカウントであるサービス アカウントが必要です。サービス アカウントの代わりにアプリケーションによって Google API が呼び出されるため、ユーザーが直接関与することはありません。認証方法について詳しくは、Google での認証方法をご覧ください。

また、Android または iOS モバイルアプリの一部として Navigation Connect を使用することもできます。さまざまなデプロイ環境のアクセス トークンの管理に関する情報など、Navigation Connect で OAuth を使用する方法に関する一般的な情報については、OAuth 2.0 を使用して Google API にアクセスするをご覧ください。

OAuth スコープについて

Navigation Connect で OAuth を使用するには、OAuth トークンに次のスコープを割り当てる必要があります。

https://www.googleapis.com/auth/cloud-platform

例: ローカル開発環境で REST API 呼び出しを試す

OAuth トークンを使用して Navigation Connect を試したいが、トークンを生成するための環境が設定されていない場合は、このセクションの手順を使用して呼び出しを行うことができます。

この例では、アプリケーションのデフォルト認証情報(ADC)から提供された OAuth トークンを使用して呼び出しを行う方法について説明します。ADC を使用してクライアント ライブラリから Google API を呼び出す方法については、クライアント ライブラリを使用した認証をご覧ください。

前提条件

ADC を使用して REST リクエストを行う前に、Google Cloud CLI を使用して ADC に認証情報を指定します。

  1. gcloud CLI をインストールして初期化します
  2. ローカルマシンで次の gcloud コマンドを実行して、認証情報ファイルを作成します。

    gcloud auth application-default login
  3. ログイン画面が表示されます。ログインすると、ADC で使用されるローカル認証情報ファイルに認証情報が保存されます。

詳細については、ローカル開発環境の ADC の設定をご覧ください。

REST リクエストを行う

この例では、2 つのリクエスト ヘッダーを渡します。

  • 次のコマンドを使用してトークンを生成し、Authorization ヘッダーで OAuth トークンを渡します。

    gcloud auth application-default print-access-token

    返されるトークンのスコープは https://www.googleapis.com/auth/cloud-platform. です。

  • 課金が有効になっている Google Cloud プロジェクトの ID または名前を X-Goog-User-Project ヘッダーで渡します。

次の例では、OAuth トークンを使用して Navigation Connect を呼び出しています。

  1. PROJECT_ID フィールドを編集して、Google Cloud プロジェクトの ID を渡します。

    必要に応じて、以下も編集します。

    • ANDROID_APP_ID: アプリの Android パッケージ名。
    • IOS_APP_ID: アプリの iOS バンドル ID。
    #!/bin/bash
    
    trip_id="$(uuidgen)"
    access_token="$(gcloud auth application-default print-access-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 '{
      "androidAppId": "ANDROID_APP_ID",
      "iosAppId": "IOS_APP_ID",
    }'
  2. コードサンプルのコピーアイコン コピーアイコンを選択します。 をクリックして、curl コマンドをコピーします。
  3. コマンドをターミナル ウィンドウに貼り付けて実行します。

レスポンスは次のような JSON オブジェクトです。

{
  "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: プロジェクトの固有の長整数識別子。
  • TRIP_ID: バックエンドで生成された UUIDv4 形式の乗車 ID。
  • BASE64_ENCODED_TRIP_TOKEN: createTrip メソッドから返される認証済みトークン。このトークンをモバイルアプリに渡して、Google マップまたは Waze で追跡されたターンバイターン方式のナビゲーションを開始します。

トラブルシューティング

この API が対応していないエンドユーザー認証情報に関するエラー メッセージがリクエストから返された場合は、ADC 設定のトラブルシューティングを行うをご覧ください。

次のステップ

Navigation Connect API の設定の次のステップは、バックエンド インフラストラクチャと Google マップおよび Waze 間の安全なサーバー間通信を可能にするようにサービス アカウントを設定することです。

サービス アカウントを設定する