ip-api.comの互換ホスト
ip-apiのJSONエンドポイントは、最も広く模倣されているIP検索の形式の1つです。ipapi.mygeocode.comはIPv4とIPv6のアドレスに同じフィールド名を返し、ip-apiでは提供されていない無料キーでのHTTPSにも対応しています。
ホスト名を1つ変えるだけ
| 元のホスト |
|
|---|---|
| 代わりに使うホスト | ipapi.mygeocode.com |
| キーのパラメーター | key(任意:どのアドレスでもキーなしで1日あたり2,500件のリクエストが使えます。クレジット、パッケージ、利用履歴を使うにはここにMy Geocodeのキーを入れてください) |
curl "http://ip-api.com/json/8.8.8.8?fields=status,country,countryCode,city,lat,lon,timezone,isp,query"curl "https://ipapi.mygeocode.com/json/8.8.8.8?fields=status,country,countryCode,city,lat,lon,timezone,isp,query"移行する理由
ip-apiの無料エンドポイントはHTTPのみ、非商用限定で、1分あたり45リクエストに制限されています。こちらはHTTPSで、商用利用も問題なく、キーの有無にかかわらず、どのアドレスでも料金が発生するまで1日あたり2,500件使えます。
キーの有無にかかわらず、無料枠は同じです。ipapi.mygeocode.comへのリクエストは、お使いのアドレスまたはキーが当社独自のエンドポイントで得ている1日あたり2,500件の無料リクエストと同じ枠から差し引かれます。それを超える分は、プリペイドクレジットで1リクエストあたり€0.0001、またはUnlimitedキーで月額€50です。登録に必要なのはメールアドレスだけです。
エンドポイント
レスポンスの例
上記のリクエストはこれを返します。フィールド名、入れ子構造、型はip-apiに準拠しています。その中身のデータだけが当社のものです。
{
"status": "success",
"country": "United States",
"countryCode": "US",
"region": "CA",
"regionName": "California",
"city": "Mountain View",
"zip": "94043",
"lat": 37.4056,
"lon": -122.0775,
"timezone": "America/Los_Angeles",
"isp": "Google LLC",
"org": "Google Public DNS",
"as": "AS15169 Google LLC",
"query": "8.8.8.8"
}詳細と相違点
1日あたり最初の2,500件のリクエストにはキーは不要です。My Geocodeのキーを使う場合は、ip-api.comのキーがあった場所、つまりkeyクエリパラメーターに入れてください。X-API-Keyヘッダー、Authorization: Bearer、HTTP Basic認証(キーをユーザー名として使用)もすべてのホストで使えるため、独自の方法で認証するクライアントライブラリも変更なしで動作し続けます。
回答にはip-api.comが返すフィールドだけが含まれるため、すでにip-api.comを解析しているコードにレスポンスをそのまま渡せます。当社の追加データ(地表の標高、脅威情報、ネットワークの詳細)はリクエストに応じて利用できます:クエリにmg_extras=1を追加するか、X-MG-Extras: 1を送信してください。
- 既定の回答は、ip-api独自のフィールドセットをその順序で返します。
fieldsには名前または数値のビットマスクを指定でき、langは国名と大陸名をde、es、pt-BR、fr、ja、zh-CN、ruに翻訳します。 json、xml、csv、lineのすべての形式が使えます。- 不正なアドレスには、ip-apiと同様にHTTP 200と
status: failで応答します。ステータスコードが変わるのは、キーと割り当てによる拒否の場合だけです。 - 一括エンドポイントは、ip-apiと同様にエントリごとの
fieldsとlang付きで最大100件のエントリを受け付けます。その中の各アドレスが1リクエストとして数えられます。 reverseを指定すると、そのアドレスのホスト名が解決されます。- 地域名は、米国、カナダ、オーストラリアでは短いコードで返ります。それ以外の地域では、データセットに正式名称しかありません。
お使いのクライアントがここに記載されていないフィールドや動作に依存している場合は、お知らせください。互換性の差異はたいてい小さいため、すぐに修正されます。