Home      API一覧     楽天GORAゴルフ場検索API

楽天GORAゴルフ場検索APIは、 楽天GORAのゴルフ場をキーワード、エリア、緯度経度などで検索し、ゴルフ場情報を取得することが可能なAPIです。

リクエストURL(REST/JSON形式の場合)


https://app.rakuten.co.jp/services/api/Gora/GoraGolfCourseSearch/20170623?format=xml&[parameter]=[value]…
https://app.rakuten.co.jp/services/api/Gora/GoraGolfCourseSearch/20170623?format=json&[parameter]=[value]…

※JSONP形式は、JSON形式で入力パラメーターにcallbackを指定することで出力されます。

フィールド名keywordに対応する[value]はUTF-8でURLエンコードされている必要があります。(リクエストURL全体をエンコードするのではなく、[value]部分を個別にエンコードしてください。)
たとえば、「天然温泉」という検索キーワードで検索し、結果を50音順に並べたい(sort=50on)場合のリクエストURLは下記になります。(実際には改行せずに1行につなげてリクエストしてください。)

https://app.rakuten.co.jp/services/api/Gora/GoraGolfCourseSearch/20170623?
format=xml
&applicationId=[Your applicationId]
&keyword=%E5%A4%A9%E7%84%B6%E6%B8%A9%E6%B3%89
&sort=50on

※短い時間の間に大量に、同一のリクエストURLへアクセスすると、一定時間利用できなくなる場合がございます。テストの際にはご注意ください。

入力パラメーター


楽天GORAゴルフ場検索API(GoraGolfCourseSearch) 入力パラメーター version:2017-06-23

ID 項目名 パラメーター 型(括弧内は最大バイト数) 必須 デフォルト 備考
Division: Shared parameters
1 App ID applicationId String 必須 - Check here
2 Affiliate ID affiliateId String - - Check here
3 Response format format String - json Either JSON or XML
When JSON is specified the callback parameter can also be set in order to use JSONP.
4 Callback function name callback String - - Function name to be used with the JSONP output
(UTF-8 URL encoded string)
Alphanumeric characters, periods, or underscores
5 Choosing output fields elements String - - By default, API response all of the fields. You can change response fields by this parameter.
This parameter's data is separated by comma(,).
For example, following request will response only itemName, itemPrice and itemUrl.
elements=itemName,itemPrice,itemUrl
6 Format version formatVersion int - 1

Response format version.

If formatVersion=2 is set, the response format (JSON) will be improved.

In case of formatVersion=1 :
Our API response will be returned in Array format as the followings.
You would need to use notation items[0].item.itemName To access itemName parameter.

{"items": [
    {"item": {
        "itemName": "a",
        "itemPrice": 10
    }},
    {"item": {
        "itemName": "b",
        "itemPrice": 20
    }}
]}

In case of formatVersion=2 :
Our API response will be returned in Array format as the followings.
You can use notation items[0].itemName To access itemName parameter.

{"items": [
    {
        "itemName": "a",
        "itemPrice": 10
    },
    {
        "itemName": "b",
        "itemPrice": 20
    }
]}
区分:サービス固有パラメーター
1 検索キーワード keyword String Affiliate対応あり
(*1)
- UTF-8でURLエンコードした文字列
(*1)検索キーワード、エリアコード、緯度経度のいずれかが指定されていることが必須です。
2 エリアコード areaCode int Affiliate対応あり
(*1)
(*3)
0 楽天GORAにおけるエリアを特定するためのコード。
エリアコードを調べたい場合は、「楽天GORAエリアコード一覧」をご参照ください。
(*1)検索キーワード、エリアコード、緯度経度のいずれかが指定されていることが必須です。
(*3)緯度経度とエリアコードが同時に指定された場合、緯度経度での検索が優先されます。
3 緯度 latitude double Affiliate対応あり
(*1)
(*2)
(*3)
- 日本測地系で入力してください
(*1)検索キーワード、エリアコード、緯度経度のいずれかが指定されていることが必須です。
(*2)緯度経度による検索には、緯度と経度、両方の入力が必要です。
(*3)緯度経度とエリアコードが同時に指定された場合、緯度経度での検索が優先されます。
4 経度 longitude double Affiliate対応あり
(*1)
(*2)
(*3)
- 日本測地系で入力してください
(*1)検索キーワード、エリアコード、緯度経度のいずれかが指定されていることが必須です。
(*2)緯度経度による検索には、緯度と経度、両方の入力が必要です。
(*3)緯度経度とエリアコードが同時に指定された場合、緯度経度での検索が優先されます。
5 検索半径 searchRadius int - 150 緯度経度検索時の検索半径(単位km)
半径10~300kmの間で指定可能
※緯度経度指定時のみ有効
6 1ページあたりの取得件数 hits int - 30 1から30までの整数
7 取得ページ page int - 1 1から100までの整数
8 ソート sort String - rating 【全体】
rating:クチコミの多い順
50on:50音順
prefecture:都道府県別
highway:高速道路順
reservation:予約件数順
【評価】
evaluation:総合評価
staff:スタッフ接客
facility:設備が充実
meal:食事が美味しい
course:コース/戦略性
costperformance:コストパフォーマンス
distance:距離が長い
fairway:フェアウェイが広い
【オススメ】
friends:エンジョイ/カジュアル
entertainment:接待/高級 
couple:カップル
athlete:アスリート
【オススメタイプ】
beginner:初心者
normal:中級者
senior:上級者
woman:女性
9 予約可能 reservation int(1) - 1 0:すべてのゴルフ場
1:楽天GORAで予約可能なゴルフ場のみ
10 キャリア carrier int(1) - 0 PC用の情報を返すのか、モバイル用の情報を返すのかを選択
PC: 0
mobile: 1

出力パラメーター


楽天GORAゴルフ場検索API(GoraGolfCourseSearch) 出力パラメーター version:2017-06-23

ID 分類 項目名 パラメーター 備考
1 全体情報 検索数 count 検索結果の総商品数
2 ページ番号 page 現在のページ番号
3 ページ内商品始追番 first 検索結果の何件目からか
4 ページ内商品終追番 last 検索結果の何件目までか
5 ヒット件数 hits 1度に返却する商品数
6 キャリア情報 carrier PC=0 or mobile=1
7 総ページ数 pageCount 最大100
8 ゴルフ場
情報
ゴルフ場ID golfCourseId  
9 ゴルフ場名 golfCourseName  
10 ゴルフ場名(略称) golfCourseAbbr  
11 ゴルフ場名(カナ) golfCourseNameKana  
12 ゴルフ場説明文 golfCourseCaption  
13 所在地 address  
14 緯度 latitude 日本測地系
15 経度 longitude 日本測地系
16 最寄高速道路 highway  
17 ゴルフ場詳細ページURL golfCourseDetailUrl 入力パラメーターにアフィリエイトIDが含まれていた場合、アフィリエイトURLとなります。
httpsではじまるゴルフ場詳細ページのURL
18 予約カレンダーURL reserveCalUrl 入力パラメーターにアフィリエイトIDが含まれていた場合、アフィリエイトURLとなります。
httpsではじまる予約カレンダーのURL
19 クチコミURL ratingUrl httpsではじまるクチコミのURL
20 ゴルフ場画像URL golfCourseImageUrl httpsではじまるゴルフ場画像のURL
21 総合評価 evaluation  

アフィリエイトに関して


デベロッパーは、楽天GORAゴルフ場検索APIからアフィリエイトURLを取得することが可能です。リンク先にそのアフィリエイトURLを指定することで、楽天アフィリエイト経由の成果報酬を獲得することができます。
アフィリエイトURLを作るには、APIの入力パラメーターに「アフィリエイトID」を含めてリクエストしてください。
入力パラメーターcarrierでPCが指定された場合でもモバイルが指定された場合でも同様の方法でアフィリエイトURLを作成することができます。(2010年06月現在)

Error

Error messages are displayed in the form of HTTP status code and its response body

HTTP Status Code Description Response body example (JSON)
400 Parameter error (or required parameters were insufficient)

If applicationId is not set

{
    "error": "wrong_parameter",
    "error_description": "specify valid applicationId"
}

If keyword is not valid (only 1 character given, etc.)

{
    "error": "wrong_parameter",
    "error_description": "keyword parameter is not valid"
}
404 If data not found.
{
    "error": "not_found",
    "error_description": "not found"
}
429 Too many requests

This error will be displayed if the number of API requests has been exceeded.
Please try access again after an amount of time.

{
    "error": "too_many_requests",
    "error_description": "number of allowed requests has been exceeded for this API. please try again soon."
}
500 Internal error in Rakuten Web Service

An internal system error occured. If you continue seeing this message for a long period, please give your inquiry via this link

{
    "error": "system_error",
    "error_description": "api logic error"
}
503 Unavailable due to maintenance or overloaded

Maintenance (the API name will be displayed in XXX/XXX)

{
    "error": "service_unavailable",
    "error_description": "XXX/XXX is under maintenance"
}

Response body format is display in format.

format Error output example
json
{
    "error": "wrong_parameter",
    "error_description": "page must be a number"
}
xml
<?xml version="1.0" encoding="UTF-8"?>
<root>
    <error>wrong_parameter</error>
    <error_description>page must be a number</error_description>
</root>