Roads API を設定する

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

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

前提条件

この手順では、Google Cloud アカウントと、課金が有効になっている Google Cloud プロジェクトを設定します。また、Roads API の使用料金についても理解しておく必要があります。

  1. Roads API の使用量と請求額で、使用量に対する請求と費用を確認します。
  2. Google Cloud アカウントがあることを確認します。

    Google Cloud コンソールにログインします。
  3. 課金が有効になっている Google Cloud プロジェクトがあることを確認します。

    [お支払い] ページに移動
    1. プロジェクトを選択して [お支払い] ページを開きます。
    2. [お支払い] ページで、次の操作を行います。

      • 選択したプロジェクトで課金がすでに有効になっていて、請求先アカウントが 1 つしかない場合は、[お支払い] ページが開きます。
      • 請求先アカウントが複数ある場合は、[リンクされた請求先アカウントに移動] を選択して、プロジェクトに関連付けられている請求先アカウントの詳細を表示します。
      • 請求先アカウントが存在しても、プロジェクトに関連付けられていない場合は、請求先アカウントをプロジェクトにリンクするように求めるプロンプトが表示されます。
      • 請求先アカウントが存在しない場合、または新しい請求先アカウントを作成する場合は、[請求先アカウントを管理] を選択して新しい請求先アカウントを作成します。詳細については、新しいセルフサービスの Cloud 請求先アカウントを作成するをご覧ください。

API を有効にする

Roads API を使用する前に、Google Cloud コンソールまたは gcloud コマンドを使用して、Google Cloud プロジェクトで有効にする必要があります。

API を有効にするには:

Console

  1. Google Cloud コンソールで商品ページを開きます。

    Roads API を有効にする
  2. [有効にする] ボタンをクリックします。

gcloud

gcloud services enable \
    --project "PROJECT" \
    "roads.googleapis.com"

詳しくは、Google Cloud SDK、Cloud SDK のインストール、および以下のコマンドをご覧ください。

Roads API で使用する API キーを取得する

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

API キーは、Cloud 請求先アカウントと Google Cloud プロジェクトを、アプリケーションから Google Maps Platform API または SDK へのリクエストに関連付ける一意の英数字文字列です。新しいキーを作成する場合、または既存のキーに API や SDK を追加する場合は、次の手順に沿って操作します。

Console

  1. [Google Maps Platform] > [キーと認証情報] ページに移動します。

    [キーと認証情報] ページに移動

  2. プロンプトが表示されたら、プロジェクトを選択します。
  3. 次のいずれかを行います。

    • 新しい鍵を作成する:

      1. [認証情報を作成] > [API キー] をクリックします。
      2. [API キーの作成] パネルで、[API の制限の選択] リストを開きます。
      3. このキーに不要な API をすべてクリアし、Roads API が選択されたままになっていることを確認します。
      4. [作成] をクリックします。パネルに新しい API キーが表示されます。
    • 既存の鍵を使用する:

      1. 鍵の名前をクリックします。
      2. [API の制限を選択] リストで、[Roads API] を選択します。
      3. [保存] をクリックします。

    ここで API を選択しても、API は有効になりません。Roads API が API ライブラリ ページで有効になっていることを確認します。

  4. 後で鍵文字列を表示するには、[鍵と認証情報] ページに移動し、鍵の [鍵を表示] をクリックします。

コンソールの表示がこれらの手順と異なる場合は、Google Cloud ドキュメントの API キーを作成すると API 制限を追加するをご覧ください。

gcloud

次のコマンドで、PROJECT_ID をプロジェクト ID に置き換えます。

  • 新しい鍵を作成する: 次のコマンドを実行します。DISPLAY_NAME は鍵の名前に置き換えます。

    gcloud services api-keys create \
        --project="PROJECT_ID" \
        --display-name="DISPLAY_NAME" \
        --api-target=service=roads.googleapis.com

    詳しくは、Google Cloud SDK、Cloud SDK のインストール、および以下のコマンドをご覧ください。

  • 既存の鍵を使用する: 次のコマンドを実行します。KEY_ID は鍵の ID に置き換えます。--append フラグは、キーですでに許可されている API を保持します。このフラグを指定しない場合、コマンドはそれらを置き換えます。

    gcloud services api-keys update KEY_ID \
        --project="PROJECT_ID" \
        --append \
        --api-target=service=roads.googleapis.com

    詳しくは、Google Cloud SDK、Cloud SDK のインストール、および以下のコマンドをご覧ください。

    鍵 ID は、鍵文字列や表示名ではありません。これを確認するには、gcloud services api-keys list --project="PROJECT_ID" を実行します。ID は name フィールドの最後の部分(projects/PROJECT_NUMBER/locations/global/keys/KEY_ID)です。

鍵文字列を表示するには、gcloud services api-keys get-key-string KEY_ID --project="PROJECT_ID" を実行します。

API リクエストを発行する

Roads API リクエストを送信して、指定されたポイントを道路の形状にスナップする JSON レスポンスを返します。すべてのリクエストに API キーの英数字文字列を含める必要があります。また、API キーを含むリクエストには HTTPS を使用する必要があります。

  1. 以下のコードの API_KEY をクリックして、鍵の英数字文字列を挿入します。

    curl -L -X GET 'https://roads.googleapis.com/v1/snapToRoads?path=-35.27801%2C149.12958%7C-35.28032%2C149.12907%7C-35.28099%2C149.12929%7C-35.28144%2C149.12984%7C-35.28194%2C149.13003%7C-35.28282%2C149.12956%7C-35.28302%2C149.12881%7C-35.28473%2C149.12836&interpolate=true&key=YOUR_API_KEY'
    
  2. コードサンプルのコピーアイコン コピーアイコンを選択します。 をクリックして、curl コマンドをコピーします。
  3. コマンドをターミナル ウィンドウに貼り付けて実行します。

レスポンスは、次の形式の JSON オブジェクトです。

{
  "snappedPoints": [
    {
      "location": {
        "latitude": -35.278004899930188,
        "longitude": 149.129531998742
      },
      "originalIndex": 0,
      "placeId": "ChIJr_xl0GdNFmsRsUtUbW7qABM"
    },
    {
      "location": {
        "latitude": -35.2784195,
        "longitude": 149.12946589999999
      },
      "placeId": "ChIJr_xl0GdNFmsRsUtUbW7qABM"
    },
    ...
    {
      "location": {
        "latitude": -35.284727644851415,
        "longitude": 149.12833853807396
      },
      "originalIndex": 7,
      "placeId": "ChIJtWxAZmpNFmsRlbUCkc6VtnA"
    }
  ]
}

API キーの制限を適用する

API キーの使用を、それらを必要とする API とアプリのみに制限することを強くおすすめします。API キーに制限をかけることにより、不正なリクエストからアプリケーションを守り、セキュリティを強化できます。API キーは、次の 2 種類の制限をサポートしています。

  • API の制限では、API キーを使用した呼び出しを許可する SDK と API を指定します。コンソールと gcloud CLI では、キーを作成するときに少なくとも 1 つの API 制限が必要です。
  • アプリケーションの制限では、API キーの使用を許可するウェブサイト、IP アドレス、またはアプリを指定します。

制限の適用について詳しくは、API キーを制限するをご覧ください。

次のステップ

Roads API を有効にしてリクエストを正常に送信できたので、Snap to Roads で API の使用方法の詳細を確認してください。