OpenStreetMap Nominatimの互換ホスト

公開Nominatimインスタンスは、リクエストを1秒あたり最大1件とし、大量の利用をしないよう求めています。osm.mygeocode.comは同じsearchとreverseのインターフェースをJSON、JSONv2、GeoJSON形式で提供し、実際に計画を立てられる割り当てがあります。

ホスト名を1つ変えるだけ

元のホスト
  • nominatim.openstreetmap.org
代わりに使うホストosm.mygeocode.com
キーのパラメーター元のサービスにはキーがなく、こちらでも必要ありません:どのアドレスでもキーなしで1日あたり2,500件のリクエストが使えます。クレジット、パッケージ、利用履歴を利用するには、クエリにkey=...を追加するか、X-API-Keyヘッダーを送信してください。
変更前
curl "https://nominatim.openstreetmap.org/search?q=Brandenburg+Gate+Berlin&format=json&addressdetails=1"
変更後
curl "https://osm.mygeocode.com/search?q=Brandenburg+Gate+Berlin&format=json&addressdetails=1"

移行する理由

公開Nominatimサーバーは厳しい利用ポリシーのある共有リソースです。自前で運用するのは専任の仕事になります。こちらは同じインターフェースで、そのどちらの問題もありません。

キーの有無にかかわらず、無料枠は同じです。osm.mygeocode.comへのリクエストは、お使いのアドレスまたはキーが当社独自のエンドポイントで得ている1日あたり2,500件の無料リクエストと同じ枠から差し引かれます。それを超える分は、プリペイドクレジットで1リクエストあたり€0.0001、またはUnlimitedキーで月額€50です。登録に必要なのはメールアドレスだけです。

料金を見る 無料のキーを取得

エンドポイント

osm.mygeocode.comのパス機能バックエンド
/search?q=...&format=json自由形式の検索ジオコーディング
/search?street=...&city=...&country=...&format=json構造化検索ジオコーディング
/reverse?lat=...&lon=...&format=json逆ジオコーディング逆ジオコーディング

レスポンスの例

上記のリクエストはこれを返します。フィールド名、入れ子構造、型はNominatim(OSM)に準拠しています。その中身のデータだけが当社のものです。

osm.mygeocode.comからのレスポンス
[
  {
    "place_id": 2384719,
    "licence": "Data by My Geocode, https://www.mygeocode.com/terms/",
    "osm_type": "way",
    "osm_id": 518071791,
    "lat": "52.5162746",
    "lon": "13.3777041",
    "class": "tourism",
    "type": "attraction",
    "place_rank": 30,
    "importance": 0.8317,
    "addresstype": "tourism",
    "name": "Brandenburger Tor",
    "display_name": "Brandenburger Tor, Pariser Platz, Mitte, Berlin, 10117, Deutschland",
    "address": {
      "tourism": "Brandenburger Tor",
      "road": "Pariser Platz",
      "suburb": "Mitte",
      "borough": "Mitte",
      "city": "Berlin",
      "state": "Berlin",
      "postcode": "10117",
      "country": "Deutschland",
      "country_code": "de"
    },
    "boundingbox": ["52.5161073", "52.5164414", "13.3775375", "13.3778623"]
  }
]

詳細と相違点

Nominatimにはキーがなく、こちらでも1日あたり最初の2,500件のリクエストにはキーは不要です。クレジット、パッケージ、利用履歴を利用するには、クエリにkey=...を追加するか、X-API-Keyヘッダーを送信してください。

レスポンス内の著作権表示、ライセンス名、利用規約とプライバシーのリンクは、元のプロバイダーのものではなく当社のものです。それ以外はすべて元の形式を保っています。

  • Nominatim自身の既定値に合わせて、/searchは既定でjsonv2を、/reverseはXMLを返します。
  • xmljsonjsonv2geojsongeocodejsonのすべての形式に対応しています。
  • ライセンスの行とXMLのattribution属性は当社のものです。
  • 元のサービスにないため、一括処理のエンドポイントはありません。大量の処理には、api.mygeocode.comPOST /v1/forwardまたは/v1/reverseをお使いください(1回の呼び出しで最大100件、それぞれ1リクエスト)。

お使いのクライアントがここに記載されていないフィールドや動作に依存している場合は、お知らせください。互換性の差異はたいてい小さいため、すぐに修正されます。

その他の互換ホスト

互換ホストの仕組み概要JavaScriptライブラリの互換対応