Yahoo!ジオコーダAPI V2(β)

リクエストURL

XML
https://map.yahooapis.jp/geocode/V2/geoCoder
JSONP
https://map.yahooapis.jp/geocode/V2/geoCoder

目次


概要

  • Yahoo!ジオコーダAPI V2(β)(以下、ジオコーダAPI)では、キーワード検索の機能を提供します。
  • 住所を指定して、その位置情報(世界測地系の緯度、経度)を出力します。

リクエストパラメータ一覧

本APIは、GETメソッドのみサポートしています。「Web APIの使い方#GETとは」をご参照ください。

パラメータ 説明
appid(必須) string Client ID(アプリケーションID)。詳細はこちらをご覧ください。
query string 住所(UTF-8をパーセントエンコーディングされた)検索クエリーです。
lat float 中心の緯度。(世界測地系)
lon float 中心の経度。(世界測地系)
bbox float 矩形範囲の左下経度、左下緯度、右上経度、右上緯度を世界測地系十進形式で指定(コンマ区切り)。
ac string 住所コード(JIS X 0401)です。
住所コードは都道府県(2桁)と市町村(5桁)を指定可能です。
ex) 北海道:01, 札幌市中央区:01101
al integer 住所検索レベルです。arオプションと組み合わせて指定されたレベルの住所を検索します。
alと住所レベルの関係の例です。検索される住所の構造により異なるレベルになる場合があります。
  • 1 - 都道府県レベル (ex:東京都)
  • 2 - 市区町村レベル (ex:東京都港区)
  • 3 - 町、大字レベル (ex:東京都港区六本木)
  • 4 - 丁目、字レベル (ex:東京都港区六本木1丁目)
  • 5 - 詳細レベル1 (ex:東京都港区六本木1丁目1)
  • 6 - 詳細レベル2 (ex:東京都港区六本木1丁目1-1)
  • 7 - 詳細レベル3 (ex:東京都港区六本木1丁目1-1-1) (デフォルト)
ar string 住所レベルの範囲です。alオプションと組み合わせて指定されたレベルの住所を検索します。
  • ge - 以上
  • le - 以下(デフォルト)
  • eq - 等しい
recursive boolean trueを指定すると、指定した住所レベルでマッチしなかった場合、上位のレベルで再検索を行います。
sort string ソート順:
  • score - 適合度順にソートします。(デフォルト)
  • dist - 距離順にソートします。
  • kana - かな昇順にソートします。
  • -kana - かな降順にソートします。
  • address - 住所階層順にソートします。
  • address2 - よく検索される住所文字列と住所階層順にソートします。
ex) 住所文字列を「銀座」と指定した場合、addressとaddress2のソート順の違い
・address:「北海道夕張郡長沼町銀座北」から順に、住所階層順に取得できます
・address2:「東京都中央区銀座」から順に、よく検索される住所文字列と住所階層順に取得できます
exclude_prefecture boolean falseを指定すると、検索対象に都道府県レコードを含めて検索します。(デフォルト: true)
exclude_seireishi boolean falseを指定すると、検索対象に政令指定都市レコードを含めて検索します。(デフォルト: true)
start integer 表示開始位置(デフォルト: 1)。最終位置(start + results - 1)は、100を超えられません。
results integer 表示件数(デフォルト: 10、最大:100)。
output string 出力形式:
  • xml - XML形式(デフォルト)
  • json - JSON形式
callback string
JSONPとして出力する際のコールバック関数名を入力するためのパラメータ。アルファベットと数値と"_"しか使えません。また、1文字目には数値は使えません。
detail string 出力項目数を増減できます(デフォルト:standard)。
詳細はこちらをご覧ください。

API使用上の注意

URLの最大の長さは2048バイトです。
URLをエンコードして指定するパラメータもありますが、エンコード後のURLの長さが2048バイトを超えないようにしてください。

サンプルリクエスト

東京都港区六本木の住所検索
https://map.yahooapis.jp/geocode/V1/geoCoder?appid=<あなたのClient ID(アプリケーションID)>&query=%e6%9d%b1%e4%ba%ac%e9%83%bd%e6%b8%af%e5%8c%ba%e5%85%ad%e6%9c%ac%e6%9c%a8

レスポンスフィールド

ジオコーダAPIのスキーマの記述は、以下のURLをご覧ください。
http://olp.yahooapis.jp/OpenLocalPlatform/V1/YDF.xsd

フィールド 説明
YDF クエリーレスポンスのすべてを含みます。
  ResultInfo レスポンスのまとめ情報です。
    Count レスポンス情報に含まれる住所情報のデータ件数です。
    Total 出力されている住所情報以外も含めた全データ件数です。
    Start レスポンス情報に含まれる住所情報の、全データからの取得開始位置です。
    Status リクエスト元に処理結果を伝えるためのコードです。正常終了の場合、200を出力します。エラー時は、下記エラー項目を参照してください。
    Description APIの説明文です。
    Latency レスポンス情報を生成するのに要した時間です。
  Feature 検索結果1件分のデータ群です。
    Id 住所IDです。
    Name 地域・拠点情報名です。
    Geometry 拠点の場所を表すGeometry要素です。
      Type 図形種別です。
      Coordinates 座標情報です。
    Property 各種データを格納します。
      Yomi 地域・拠点情報名の読み(カタカナ)です。
      Country 国情報です。
        Code 国コード(ISO 3166-1)です。
        Name 国名です。
      Address 1行であらわす住所です。
      AddressElement 住所構造のデータ群です。
        Level 住所構造のレベルです。
      GovernmentCode 住所コード(JIS X 0402)です。
      AddressMatchingLevel 住所レベルです。
      Detail 詳細データを格納します。
        NameHiragana 地域・拠点情報名の読み(ひらがな)です。
      Approximation 住所とクエリーの一致度です。

サンプルレスポンス

以下は、東京都港区六本木の住所検索のリクエストに対するレスポンスです。

<?xml version="1.0" encoding="UTF-8"?>
<YDF totalResultsReturned="1" totalResultsAvailable="1" firstResultPosition="1">
 <ResultInfo>
  <Count>1</Count>
  <Total>1</Total>
  <Start>1</Start>
  <Status>200</Status>
  <Description/>
  <Latency>0.054</Latency>
 </ResultInfo>
 <Feature>
  <Id>13103.29</Id>
  <Name>東京都港区六本木</Name>
  <Geometry>
   <Type>point</Type>
   <Coordinates>139.72942568,35.66412162</Coordinates>
   <BoundingBox>139.7235920,35.6570790 139.7436260,35.6686690</BoundingBox>
  </Geometry>
  <Category/>
  <Description/>
  <Style/>
  <Property>
   <Yomi>トウキョウトミナトクロッポンギ</Yomi>
   <Country>
    <Code>JP</Code>
    <Name>日本</Name>
   </Country>
   <Address>東京都港区六本木</Address>
   <GovernmentCode>13103</GovernmentCode>
   <AddressMatchingLevel>3</AddressMatchingLevel>
   <AddressType>町・大字</AddressType>
  </Property>
 </Feature>
</YDF>

エラー

コード 説明
400 渡されたパラメータがWeb APIで期待されたものと一致しない場合に返されます。

以下は、リクエストに対するエラーレスポンスです。

<Error>
  <Code>400</Code>
  <Detail>Bad Request</Message>
</Error>

アプリケーションの管理

目次

利用のルール

開発のヒント