住所正規化 API

AI エージェントの tool に、日本住所の確定値を。

表記ゆれのある住所文字列を入力すると、正規化済み住所と構造化コード (町字 ID・lg_code・JIS コード)を必ず同じ JSON schema で返します。
データはデジタル庁アドレス・ベース・レジストリ(CC BY 4.0)準拠。

申し込む(月 5,000 回まで無料)

LLM 単体では解けない理由

エージェントに必要なものLLM 単体この API
表記ゆれの正規化(「6-10-1」⇄「六丁目10」) 毎回揺れる。もっともらしい誤答が混ざる 同じ入力に必ず同じ正解
町字 ID(machiaza_id)・lg_code・JIS コード 重みの中に存在しない レジストリの値をそのまま返す
住所レジストリの更新への追従 knowledge cutoff で止まる 最新データ
パイプラインに流せる構造化 JSON 出力形式が揺れ、パースが壊れる schema 保証(OpenAPI 3.1)
1 件あたりのコスト 推論トークン課金(件数比例で高額) ¥0.1〜0.5/回・数十 ms

30 秒で試す(キー不要・月 5,000 回まで無料)

curl -X POST https://shirabe.dev/api/v1/address/normalize \
  -H "Content-Type: application/json" \
  -d '{"address": "東京都港区六本木6-10-1"}'

返るのは必ずこの形の JSON です(実レスポンス):

{
  "input": "東京都港区六本木6-10-1",
  "result": {
    "normalized": "東京都港区六本木6丁目10",
    "components": {
      "prefecture": "東京都", "city": "港区", "town": "六本木6丁目",
      "block": "10番", "jis_code": "13103",
      "lg_code": "131032", "machiaza_id": "0028006"
    },
    "level": 4, "confidence": 0.93
  },
  "attribution": { "source": "アドレス・ベース・レジストリ(住所データ)", "license": "CC BY 4.0" }
}

複数件は POST /api/v1/address/normalize/batch(1 回で最大 100 件)。

エージェントに組み込む

OpenAPI 3.1 定義をそのまま tool / function として読み込めます。

  • OpenAPI 定義: https://shirabe.dev/api/v1/address/openapi.yaml
  • ChatGPT(GPTs Actions): 短縮版 https://shirabe.dev/api/v1/address/openapi-gpts.yaml を Actions に import
  • Claude / LangChain 等: 上記 OpenAPI から tool 定義を生成、または HTTP tool で POST /api/v1/address/normalize を直接指定

レスポンスの attribution(CC BY 4.0 出典)は必須フィールドとして常に同梱されるため、 エージェントの出力にそのまま出典を伝搬できます。

→ 技術ドキュメント(全 endpoint 仕様・エラー・レート制限)

料金

プラン月間上限単価レート制限
Free5,000 回無料(キー不要)1 req/s
Starter200,000 回¥0.5/回30 req/s
Pro2,000,000 回¥0.3/回100 req/s
Enterprise無制限¥0.1/回500 req/s
  • 全プラン共通で最初の 5,000 回/月は無料。超過分のみ従量(税抜)。例: 月 30,000 件 = (30,000 − 5,000) × ¥0.5 = ¥12,500
  • プラン上限に達すると 429 で止まり、それ以上は課金されません(エージェントが暴走しても請求は上限止まり)
  • 単価・無料枠は据え置き運用(変更は無料枠拡張・値下げ等、利用者に有利な方向のみ)。tool 定義に価格を書いても陳腐化しません
  • 決済は Stripe。キー発行・停止・復帰・解約まで全て自動、営業や問い合わせを挟みません

申し込む →

暦・テキスト・法人番号も使う場合は、1 本のキーにまとめる Hub License もあります。