このドキュメントでは、ナビゲーション コネクトの使用を開始するために必要な手順について説明します。
|
前提条件を満たしていることを確認します。 |
Google Cloud プロジェクトで API を有効にします。 |
認証済みの API リクエストを送信するように OAuth を構成します。 |
Google Maps Platform サービスでは、不正使用を防ぐため、API 呼び出しに OAuth トークンを含める必要があります。
OAuth トークンを作成する
Navigation Connect は、認証に OAuth 2.0 をサポートしています。Google は、ウェブサーバーのシナリオなど、OAuth 2.0 の一般的なシナリオに対応しています。
このドキュメントでは、開発環境で Navigation Connect 呼び出しに OAuth トークンを渡す方法について説明します。本番環境での OAuth の使用について詳しくは、Google での認証方法をご覧ください。
Google Maps APIs は、サーバーに API リクエストを送信して直接呼び出すことも、クライアント ライブラリを使用してコードを簡素化することもできます。Google マップは、Go、Java、Node.js、Python 用のクライアント ライブラリを提供しています。詳しくは、Navigation Connect クライアント ライブラリをご覧ください。
OAuth の概要
デプロイ環境に応じて、OAuth を使用してアクセス トークンを作成および管理する方法はいくつかあります。
OAuth 2.0 を使用して、アプリケーションと Google サービス間のサーバー間インタラクションを行うことができます。このシナリオでは、個々のユーザーではなく、アプリケーションに関連付けられたサービス アカウントを使用します。サービス アカウントを使用して、ユーザーを直接関与させることなく API リクエストを行うことができます。認証方法の詳細については、Google での認証方法をご覧ください。
また、Navigation Connect を Android または iOS のモバイルアプリに統合することもできます。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 を呼び出す方法については、クライアント ライブラリを使用して認証するをご覧ください。
次の REST 手順は、開発またはテストでのみ使用し、本番環境では使用しないでください。
前提条件
ADC を使用して REST リクエストを行う前に、gcloud CLI を使用して ADC に認証情報を指定します。
gcloudCLI をインストールして初期化します。詳細については、gcloud CLI をインストールするをご覧ください。gcloudCLI で認証します。gcloud auth application-default login
ログイン プロセスを完了して、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 を呼び出すには、次の手順を行います。
次のコードサンプルで、プレースホルダを独自の値に置き換えます。
- 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", }'
curlコマンドをコピーするには、コードサンプルの [コピー] をクリックします。コマンドをターミナル ウィンドウに貼り付けて実行します。
レスポンスは次のような 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 間の安全なサーバー間通信をサポートします。