Google Places APIとは
Places APIはHTTPリクエストを使って場所に関する情報を取得できるサービスです。ここでいう「場所」とは、通常このAPI内で施設、地理的な位置、または著名な観光スポットなどを指します。
APIには5種類のリクエストが用意されています。以下の通りです:
- Place Search:ユーザーの位置情報や検索文字列に基づいて場所のリストを返します。
- Place Details:特定の場所の詳細情報を、ユーザーレビューを含めて提供します。
- Place Photos:GoogleのPlacesデータベースに保存されている何百万もの場所関連の写真にアクセスできます。
- Place Reviews:Googleのレビューを取得してウェブサイトに埋め込むことができます。
- Place Autocomplete:ユーザーが入力する際に場所の名前や住所を自動で補完します。
- Query Autocomplete:テキストベースの地理検索に対してクエリ予測を提供し、ユーザーの入力に応じて候補を返します。
Places APIを利用するには、すべてのリクエストに含めるAPIキーが必要です。ここではそのAPIキーとは何か、そしてGoogle Places APIキーの取得方法を解説します。
Google Places APIキーの作成方法
APIキーは、プロジェクトに紐づくリクエストを認証し、利用状況や課金を管理するための一意の識別子です。APIキーを使って認証することで、以下が可能になります:
- Google Cloud ConsoleでAPIを管理する。
- Google Cloud Platform Consoleでリアルタイムの利用状況や過去30日間の履歴データにアクセスする。
- Google Cloud Support Portalで30日以上の利用レポートを確認する。
プレミアムプラン利用者向けのレポート詳細はこちらをご覧ください。では、APIキーの取得に進みましょう。
ウェブサイトにカスタマーレビューを追加する別の方法も自由にお試しいただけます。例えば、ElfsightのGoogle Reviewsウィジェットなら、APIキーの取得やコーディングの手間が不要です。
Places APIキーを取得してリクエストに追加する方法
APIキーを取得するには、以下の手順を行います:
- Google Cloud Platform Consoleを開く。
- プロジェクトのドロップダウンリストから、作成済みのプロジェクトを選択。名前は「Google Maps APIs for Business」や「Google Maps for Work」または「Google Maps」で始まります。
- メニューボタンをクリックし、「APIs & Services」>「Credentials」を選択。
- 「Credentials」ページで「Create credentials」>「API key」を選択。新しいAPIキーが作成されたダイアログが表示されます。
- タブを閉じると、APIキーは「Credentials」ページの「API keys」セクションに表示されます。
取得したAPIキーは、すべてのPlaces APIリクエストに追加してください。以下の例では、YOUR_API_KEYを取得したAPIキーに置き換えます:
https://maps.googleapis.com/maps/api/place/nearbysearch/json ?location=-33.8670522,151.1957362 &radius=500 &types=food &name=harbour &key=YOUR_API_KEY
GoogleはAPIキーの制限を強く推奨しています。制限を設定することでセキュリティが向上し、許可されたリクエストのみがAPIキーで実行されるようになります。
Google Places APIキーの制限方法
設定すべき制限は2種類あります。以下の通りです:
- アプリケーション制限:APIキーの利用をウェブサイト、ウェブサーバー、またはモバイルアプリに限定できます。このカテゴリからは1つの制限のみ選択可能です。
- API制限:APIキーの利用を1つ以上のAPIやSDKに限定します。
APIキーの制限を設定するには:
- Google Cloud Consoleを開く。
- プロジェクトのドロップダウンリストから、制限を設定したいAPIキーが含まれるプロジェクトを選択。
- メニューボタンをクリックし、「APIs & Services」>「Credentials」を選択。
- 「Credentials」ページで制限したいAPIキーの名前をクリック。
- 「Restrict and rename API key」ページで制限を設定。
制限を設定したら、あとは「保存」ボタンをクリックするだけです。
Google Places APIの使い方:例
Google Places APIの利用方法はいくつかあります。いくつか例を見てみましょう。
Place Search(場所検索)
前述の通り、Places APIは多数のカテゴリを使って場所情報を検索できます。以下は「Museum of Contemporary Art Australia」を検索するFind Placeリクエストの例です:
https://maps.googleapis.com/maps/api/place/findplacefromtext/json?input=Museum%20of%20Contemporary%20Art%20Australia&inputtype=textquery&fields=photos,formatted_address,name,rating,opening_hours,geometry&key=YOUR_API_KEY
Place Details(場所の詳細)
Google Places Searchでplace_idを取得したら、そのIDを使って特定の施設や観光スポットの詳細情報をPlace Detailsリクエストで取得できます。以下はplace_idによる詳細情報取得の例です:
https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJN1t_tDeuEmsRUsoyG83frY4&fields=name,rating,formatted_phone_number&key=YOUR_API_KEY
Place Photos(場所の写真)
このサービスを使うと、アプリケーションに写真コンテンツを追加できます。Placesデータベースに保存されている何百万もの写真にアクセス可能です。以下はリクエスト例です:
https://maps.googleapis.com/maps/api/place/photo?maxwidth=400&photoreference=CnRtAAAATLZNl354RwP_9UKbQ_5Psy40texXePv4oAlgP4qNEkdIrkyse7rPXYGd9D_Uj1rVsQdWT4oRz4QrYAJNpFX7rzqqMlZw2h2E2y5IKMUZ7ouD_SlcHxYq1yL4KbKUv3qtWgTK0A6QbGh87GB3sscrHRIQiG2RrmU_jF4tENr9wGS_YxoUSSDrYjWmrNfeEHSGSc3FyhNLlBU&key=YOUR_API_KEY
Place Autocomplete(場所の自動補完)
これはHTTPリクエストに対して場所の予測結果を返すウェブサービスです。テキストベースの地理検索の自動補完機能として利用できます。以下は施設を対象としたリクエスト例です:
https://maps.googleapis.com/maps/api/place/autocomplete/xml?input=Amoeba&types=establishment&location=37.76999,-122.44696&radius=500&key=YOUR_API_KEY
Query Autocomplete(クエリの自動補完)
このサービスはテキストベースの地理検索に対してクエリ予測を提供し、ユーザーの入力に応じて候補を返します。以下はリクエスト例です:
https://maps.googleapis.com/maps/api/place/queryautocomplete/json?key=YOUR_API_KEY&input=pizza+near%20par
Google Places APIの料金と制限
Googleは従量課金制の料金モデルを採用しています。Google Maps PlatformのAPIはSKUごとに課金され、1つのAPIが複数のSKUを持つ場合もあります。
Places APIは24時間あたり1,000回の無料リクエストが可能ですが、Google Cloud Consoleで課金を有効にすると24時間あたり最大150,000回の無料リクエストに増やせます。
月間利用量の範囲(1リクエストあたりの料金) | 0~100,000 | 100,001~500,000 | 500,000以上 | |
Autocomplete | 1リクエストあたり0.00283 USD(1000リクエストあたり2.83 USD) | 1リクエストあたり0.00227 USD(1000リクエストあたり2.27 USD) | ボリューム価格については営業担当にお問い合わせください | |
Query Autocomplete | 1リクエストあたり0.00283 USD(1000リクエストあたり2.83 USD) | 1リクエストあたり0.00227 USD(1000リクエストあたり2.27 USD) | ボリューム価格については営業担当にお問い合わせください | |
Places Details | 1リクエストあたり0.017 USD(1000リクエストあたり17.00 USD) | 1リクエストあたり0.0136 USD(1000リクエストあたり13.60 USD) | ボリューム価格については営業担当にお問い合わせください | |
Places Photo | 1リクエストあたり0.007 USD(1000リクエストあたり7.00 USD) | 1リクエストあたり0.0056 USD(1000リクエストあたり5.60 USD) | ボリューム価格については営業担当にお問い合わせください | |
Search | 1リクエストあたり0.032 USD(1000リクエストあたり32.00 USD) | 1リクエストあたり0.0256 USD(1000リクエストあたり25.60 USD) | ボリューム価格については営業担当にお問い合わせください |
料金や制限の詳細はGoogle Place APIのドキュメントをご確認ください。
よくある質問
Google Places APIは無料で使えますか?
Places APIは従量課金制です。料金の詳細は上記の表やドキュメントをご覧ください。
Google Places APIはどうやって使えますか?
利用するにはAPIキーが必要です。Cloud Consoleのプロジェクトドロップダウンリストから作成済みのプロジェクトを選択して取得できます。
場所の追加や編集はどうすればいいですか?
ビジネスのオーナーであれば、Googleマイビジネスを使ってGoogleマップ上で追加や編集が可能です。オーナーでない場合でも変更提案はできます。
ウェブサイトでAPIを使い始めるには?
まず、どのAPIが必要かを理解することが重要です。対象のAPIやSDKの概要、開発者向けガイド、入門ガイドを確認してください。
まとめ
これでGoogle Maps Places APIキーの取得方法が理解できたと思います。ご覧の通り、非常に簡単で5分もあれば完了します。始める前にどのタイプのAPIを使うかを把握しておくことだけが重要です。