ぐるなびAPI

ぐるなびAPIのレストラン検索で飲食店情報検索

ぐるなびWebサービスのぐるなびAPIの主要な3つのAPI

・レストラン検索API

・他言語レストラン検索API

・応援口コミAPI

まずは。レストラン検索APIを試してみます

レストラン検索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は今年の9月ごろにバージョンアップされました

来年の9月までは、旧バージョンのAPIと新バージョンのAPIの両方が使える状態になっています

APIのURLが変更になりましたが、内容の主な変更点は、旧バージョンではレスポンスの形式がXMLとJSONから選択できたのですが、新バージョンではJSONだけになったことと、http://からhttps://に変わったことです

旧バージョンと新バージョンの切り替えには思ったよりも手こずりました