ぐるなびAPIはぐるなびWebサービスの飲食店情報を取得できるAPIです
ぐるなびWebサービスのぐるなびAPIにある主要な3つのAPIがこちらです
・レストラン検索API
・他言語レストラン検索API
・応援口コミAPI
まずは、基本的な飲食店情報を取得できるレストラン検索APIを試してみます
レストラン検索APIも他言語レストラン検索APIもどちらも飲食店情報を検索するAPIですが、日本語だけを使用するのであれば、レストラン検索APIでよいです
追記>
ぐるなびWebサービスは今後、法人向けの有料サービスになります
無料利用可能なAPIサービスの提供は2021年6月30日までで終了とのことです
以下の記事は無料のぐるなびAPIについて記載した過去の内容で、現在の状況とは異なる場合がありますのでご注意ください
Contents
ぐるなびAPI 無料サービス終了 法人向けサービス化
有料サービスは商用も可能なサービスですが、継続して利用希望がある場合は、ぐるなびWebサービスのサイトでご確認ください
https://api.gnavi.co.jp/api/(ただし2021年6月30日でクローズ)
株式会社ぐるなびのサービスに関するお問い合わせはこちらへどうぞ
以下の記事は無料のぐるなびAPIについてですのでご注意ください
ぐるなびAPI レストラン検索API 飲食店情報のAPI仕様
レストラン検索APIのAPI仕様 リクエストパラメータ
こちらが飲食店情報を取得するレストラン検索APIのAPI仕様です
https://api.gnavi.co.jp/api/manual/restsearch/
レストラン検索APIの現在の最新バージョンのURLはこちらです
URL:https://api.gnavi.co.jp/RestSearchAPI/v3/
このレストラン検索APIのURLの後ろにリクエストパラメータをくっつけて、アクセスするとレスポンスがJSONファイルで返ってくるわけです
https://api.gnavi.co.jp/RestSearchAPI/v3/?keyid=**********&freeword=横浜 中華街
APIのURLの後ろに「?」をつけて、そのあとにまず最初にアクセスキーのパラメータ「keyid=」をつけます
**********の部分はアカウント登録して発行されたアクセスIDです
そして、その後のパラメータを「&」でつないでいきます
フリーワードで検索するだけなら、フリーワード検索を行うパラメータの「freeword」を使って、「横浜 中華街」のように検索ワードを入れてリクエストします
ただし、APIを呼び出すときは、このフリーワードの部分はUTF-8でURLエンコードしておく必要があります
API仕様ではカンマ区切りで複数ワード検索となると書かれているのですが、スペース区切りでも同じ結果が得られました
どんな検索結果が返ってくるかを簡単に確認するには、上記のパラメータをつけたURLをブラウザのURL窓に張り付けてやればレスポンスが返ってきます
あるいは、ぐるなびWebサービスにはAPIテストツールがありますので、APIテストツールでパラメータを設定してやればレスポンスが確認できます
https://api.gnavi.co.jp/api/tools/
リクエストで指定できるパラメータはフリーワード以外にもいろいろあります
店舗を指定して情報を取得する場合は、店舗ごとにユニークなIDが振られている店舗ID「id」を指定します
その他、名称の指定や地域の指定など、さまざまなパラメータがあり、件数やいろいろな条件を指定して絞り込みを行うためのパラメータも用意されています
レストラン検索APIのAPI仕様 レスポンスパラメータ
レスポンスは、ぐるなびのサイトでお店の基本情報に表示されているようなデータが返ってきます
レスポンスで返ってくる飲食店の最大件数は1000件です
上記のAPI仕様のページにレスポンスパラメータの仕様も記載されていますが、どんなデータが返ってくるか確認するには、ブラウザで表示させてみるか、APIテストツールで表示させてみるのがよいと思います
お試しください
こちらは、ぐるなびAPIのレストラン検索APIで飲食店情報を取得して表示させているものの例です
口コミ・詳細情報のリンク先も、phpで作成しているページになります
このphpで作成したページでは、レストラン検索APIと応援口コミAPIを使用していて、基本情報はレストラン検索APIで取得したもの、写真や口コミは応援口コミAPIで取得したものです
おすすめグルメレストラン情報(自作サイトです)
ぐるなびAPI レストラン検索API 飲食店情報の使い方
ぐるなびAPI レストラン検索APIの使い方
WebAPIの使い方の例として、ぐるなびAPIのレストラン検索APIを使いフリーキーワードでレストラン情報を検索するPHPプログラムを作ってみましたので、作成したプログラムを紹介しています
プログラムの内容については、こちらをご覧ください
ぐるなびAPIの使い方 ぐるなびWebサービス
ぐるなびAPIの使い方、ぐるなびWebサービスの登録についてはこちらを参考にしてください
ぐるなびAPIとアフィリエイト・商用利用について
ぐるなびAPIは商用利用できません
原則としてアフィリエイトと併用することも規約上NGとなっています
ぐるなびWebサービスに問合せ、商用利用の範囲を確認しました
ぐるなびAPIとアフィリエイトを併用するのは原則NGです
バリューコマースなどを利用し、ぐるなびのみに限定した場合なら可能となりますから条件を確認してください
ぐるなびAPI 飲食店情報のAPIバージョンアップ
ぐるなびAPIは2018年の9月ごろにバージョンアップされました
2019年の9月までは、旧バージョンのAPIと新バージョンのAPIの両方が使える状態になっていました
APIのURLが変更になりましたが、内容の主な変更点は、旧バージョンではレスポンスの形式がXMLとJSONから選択できたのですが、新バージョンではJSONだけになったことと、http://からhttps://に変わったことです
旧バージョンと新バージョンの切り替えには思ったよりも手こずりましたので、何にてこづったのかの備忘録です