特別企画

Google Maps API無償版のポリシー変更、猶予期間が10月12日で終了、地図が突然表示されなくなる可能性も

 Google Maps API無償版のポリシー変更が6月22日に発表され、猶予期間が10月12日で終了した。

 このポリシー変更は、Google Maps APIを利用しているユーザーにとって大きな影響があり、「突然、ウェブサイトの地図が表示されなくなる」という可能性もあるものだという。

 具体的な変更内容とその影響、Google Maps APIを利用しているサイトが確認・対応すべき事項について、地図・位置情報ソリューション開発を手掛ける株式会社ゴーガの市川真利氏が解説する。同社はGoogle Maps API有償版の販売代理店/Google Cloudプレミアパートナーで、2013年度にはGoogleからアジアパシフィック地域でGoogle Maps分野における最優秀パートナーを受賞した実績もある。

 Google Maps APIは、小売業、通信、交通、不動産、製造業、公共施設はじめ、さまざまな業種・企業で利用されている。一般に広く公開するサイトでは無償版を使用することができることや、使いやすい、見慣れている、海外地図にも対応している――といったことが、Google Maps APIが選ばれる理由として挙げられる。

 このようにGoogle Maps APIを埋め込んで使用しているサイトはとても多いが、最近になって、Google Mapsが正常に表示されなくなったとのトラブル報告もいくつか挙がっている。今回のポリシー変更の影響が原因のサイトもあるようだ。

 では、ポリシー変更によって具体的に何が変わったのか? 主な変更点は、「APIキーの設定」「無償で利用できる各APIの1日の上限の変更」という2つだ。

変更点1:APIキーの設定

 これまで、Google Maps API無償版を利用する場合は、スクリプトを書けば地図が表示されていたが、ポリシー変更により、その地図を呼び出すスクリプトに「APIキー」の設定が必要となった。APIキーとは、ウェブサイトやアプリケーションでGoogle Maps APIを利用するための鍵で、Googleから取得した鍵を持っているユーザーのみが、Google Maps APIを使うことができる。

 6月22日以降、新たなドメインでGoogle Maps APIを使用する場合には、APIキーの設定が必須となっている。新たなドメインでAPIキーなしで地図を呼び出そうとすると、エラー画面となり地図が表示されない。

エラー画面
コンソール画面「Google Maps API error: MissingKeyMapError」

 一方、6月22日以前からGoogle Maps APIを利用しているドメインでAPIキーの設定がないまま地図を呼び出すと、地図は表示されるが、警告が出る。いつまで地図が表示されるか保証はないため、突然、非表示になることを避けるにはAPIキーの設定をする必要がある。

コンソール画面「Google Maps API warning : NoApiKeys」

 APIキーの取得および設定方法は、Google Maps APIのガイドページに説明があるが、大まかな流れは以下の通り。

1)Google Maps APIのガイドページで「GET A KEY」を押下、「Google API Console」に移動するので、Google アカウントでログインした後、「続行」を押下

2)「HTTPリファラー(ウェブサイト)」を選択し、「このHTTPリファラー(ウェブサイト)からのリクエストを受け入れる」の項目にドメイン名(複数可)を入力する。これは、取得したAPIキーでのGoogle Maps APIのリクエストをどこのサイトで使えるかを制限するもの。「省略可」とあるが、第三者によるAPIキーの使用を防ぐために設定するのがよい。その後、「作成」を押下

3)作成されたAPIキー

4)スクリプトにAPIキーを設定する

スクリプト例

APIキー設定前:
<script async defer src= "https://maps.googleapis.com/maps/api/js"></script>

APIキー設定後:
<script async defer src= "https://maps.googleapis.com/maps/api/js?key= <作成されたAPIキー>" ></script>

変更点2:無償で利用できる各APIの1日の上限の変更

 地図を表示するために使用するJavaScript、Static Maps、Street View Image APIは、無償で利用できるリクエスト(マップロード)回数の上限が1日2万5000回となり、10月12日以降、1日でもこの上限を超過した場合、課金の対象となる(「90日間連続で超過した場合」という猶予期間がなくなったのが大きな変更)。これに加え、1日の上限が100万回から10万回に引き下げられた。

 例えば、テレビ番組でサイトが紹介されるなどして一気にアクセスが集中し、1日の上限を超えてしまった場合、課金を有効にしていないと、その時点でエラー画面が表示される。1日のリクエクトが2万5000回を超える可能性がある場合には、クレジットカードを登録し、課金を有効にしておく必要がある。料金は、1000マップロードで0.50ドルとなっている。

 1日10万回以上のリクエストがある場合は、Google Maps API有償版の契約が必要となる。Google Maps API無償版を利用している場合には、課金を有効にしても1日10万回以上は利用できず、上限を超えた時点でエラー画面となる。

1日の使用量:JavaScript APIなど

 課金の有効化の方法は、「ENABLE BILLING」から確認ができる。

 このほか、Directions API、Distance Matrix API、Elevation API、Geocoding API、Geolocation API、Roads API、Time Zone APIの7種類のAPIは、無償で利用できるリクエスト回数の上限が1日2500回となる。課金を有効にしていない場合、1日の上限を超えると、JavaScript APIと同様、その時点でエラーとなる。

1日の使用量:Directions APIなど

 ここでの大きな変更点は、これまではクライアント側のリクエストは無制限、サーバー側のリクエストがカウントの対象だったが、今回のポリシー変更により、クライアント側およびサーバー側のリクエスト両方がカウントの対象となる点だ。料金は1000リクエストで0.50ドルとなっている。Google Maps APIを使ってルート検索など利用している場合には確認が必要だ。

カウント対象となるクライアント側/サーバー側リクエストの変更前と変更後

広告非表示、稼働保証やテクニカルサポートが必要な場合は、有償版の契約を

 変更点2のとおり、今回、Google Maps API無償版のリクエスト回数の上限が引き下げられたことで、サイトの規模によっては、これを機に有償版への切り替えを検討する必要がある。

Google Maps API有償版と無償版の違い

 どちらを利用するかは用途にもよるが、Google Maps API無償版を利用する条件として、地図上に広告が表示される可能性があることに留意する必要がある。どのタイミングでどのような広告が出るかは開示されていないため、ウェブサイトに載せている地図の上に、競合他社の広告が出る可能性もあるというわけだ。これに対して有償版では、広告の表示が制御できる。

 そのほか、稼働保証やテクニカルサポートを希望する場合は、有償版が適している。なお、非公開サイトや移動体管理システムでGoogle Maps APIを利用する場合には、有償版の契約が必須になる。

 なお、有償版を契約した場合は、今回の無償版のポリシー変更による影響はない。

 Google Maps API有償版は、用途によってライセンスの種類が異なり、1つの契約で13種類(ライセンスの種類によって異なる)のAPIが利用可能となる。ウェブサイトで利用する場合は、公開サイト用のライセンスとなり、年間100万クレジットで年額120万円(税別)で販売している。クレジットとは、JavaScript APIでの地図の読み込みや、Directions APIやGeocoding APIなど、1日10万回以上のリクエストの超過分、Places API APIの使用分に充当される。

Google Maps API有償版におけるクレジットの考え方

 無償版の課金登録はユーザー自身での手続きとなるが、有償版はGoogleのパートナー企業との契約になる。

 ゴーガもパートナー企業の1社であり、Google Cloudプレミアパートナーとして「Google Maps APIs Premium Plan(有償版)」を販売している。また、Google Maps API有償版の販売だけでなく、店舗検索システムの提供や、顧客のニーズに合わせてGoogle Maps APIを活用するシステムの開発も得意としている。

市川 真利

2015年2月、株式会社ゴーガに入社。Google Maps API有償版の営業を担当している。