GeoLocationは、ユーザー IPアドレスを通じて位置情報を提供する韓国唯一のサービスです。このサービスを利用すると、ユーザーの位置情報や地域に基づいたコンテンツのパーソナライズ、広告のターゲティング、トラフィック分析、DRM管理、不正利用/Fraudの検知などを行うことができます。GeoLocationは NAVERクラウドプラットフォームが提供する APIサービスです。同サービスは、顧客サーバでクエリした IPアドレスに対して地域情報 DB(GeoLocation DB)を検索し、その地域の顧客サーバに渡します。このとき提供される情報には、国、市/郡/区、洞、近隣地域の座標、通信キャリア情報などが含まれます。IPアドレスごとの位置情報は毎日随時更新されており、常に最新の情報が反映されるよう管理されています。NAVERクラウドプラットフォーム APIは RESTful形式で提供され、HTTP GETメソッド呼び出しにより実行されます。
GeoLocationの共通設定
リクエスト
共通リクエスト形式を説明します。
API URL
リクエスト API URLは次の通りです。
https://geolocation.apigw.ntruss.com
リクエストヘッダ
リクエストヘッダの説明は次の通りです。
| フィールド | 必須の有無 | 説明 |
|---|---|---|
x-ncp-apigw-timestamp |
Required | 1970年1月1日00:00:00協定世界時(UTC)からの経過時間(ミリ秒)
|
x-ncp-iam-access-key |
Required | NAVERクラウドプラットフォームから発行された Access Key
|
x-ncp-apigw-signature-v2 |
Required | NAVERクラウドプラットフォームから発行された Access Keyとマッピングする Secret Keyと HMAC暗号化アルゴリズム(HmacSHA256)でリクエスト情報を暗号化した後、Base64にエンコードした署名 |
Content-Type |
Required | リクエストデータの形式
|
レスポンス
共通レスポンス形式を説明します。
レスポンスボディ
レスポンスボディの説明は次の通りです。
error
errorは API呼び出し失敗情報を定義します。errorの説明は次の通りです。
| フィールド | タイプ | 必須の有無 | 説明 |
|---|---|---|---|
error |
Object | - | エラーコードとメッセージ |
error.errorCode |
String | Required | エラーコード |
error.message |
String | Required | エラーメッセージ |
error.details |
String | Required | エラーメッセージの説明 |
レスポンスステータスコード
レスポンスステータスコードの説明は次の通りです。
| HTTPステータスコード | コード | メッセージ | 説明 |
|---|---|---|---|
| 204 | - | OK (No Content) | リクエスト成功 |
| 400 | 131000 | No Entry | リクエストした IPアドレスの地域情報が見つからない
|
| 400 | 131001 | Invalid IP | グローバル IPアドレスではないか、無効な IPアドレス形式
|
| 400 | 131002 | Internal Server Error | GeoLocationサーバエラー
|
| 400 | 131003 | Quota Limit Reached | ユーザーが設定した API呼び出し上限超過
|
| 400 | 131004 | Subscription Required | GeoLocationサービスの申し込みが必要
|
| 404 | - | Not Found | リソースが見つからない |
| 500 | - | Internal Server Error | 内部サーバエラー |
参考
NAVERクラウドプラットフォームで共通して使用されるレスポンスステータスコードの詳細は、Ncloud APIのレスポンスステータスコードをご参照ください。
レスポンス例
呼び出しが成功した場合のレスポンス例は、API仕様書を確認してください。呼び出しに失敗した場合のレスポンスのサンプルコードは次の通りです。
{
"error": {
"errorCode": 130001,
"message": "Invalid Quota",
"details": null
}
}