法人番号 API
AI エージェントの tool に、法人の確定情報を。
国税庁法人番号公表サイトのデータ(約 579 万社)を、検索・照合・実在確認・商号正規化の
4 つの endpoint で提供する REST API。
KYC・与信・取引先マスタの照合を、必ず同じ JSON schema で処理できます。
LLM 単体では解けない理由
| エージェントに必要なもの | LLM 単体 | この API |
|---|---|---|
| 法人番号 ⇄ 法人情報の照合 | 579 万社のレコードは重みの中にない。もっともらしい誤答を生成する | 公表データそのものを返す |
| 新設・閉鎖・商号変更への追従 | knowledge cutoff 以降は必ず古い | 閉鎖情報(closedAt / successorLawId)まで返す |
| 法人番号の実在確認(KYC) | checksum 計算も実在確認もできない | validate が形式・checksum・登録簿の 3 段で判定 |
| 「(株)」「カブシキガイシャ」等の商号表記ゆれ | 毎回揺れる | normalize が決定的に正規化 + 法人種別を分離 |
| 1 件あたりのコスト | 推論トークン課金(件数比例で高額) | ¥0.1〜0.5/回・数十 ms |
30 秒で試す(キー不要・月 5,000 回まで無料)
curl -X POST https://shirabe.dev/api/v1/corporation/lookup \
-H "Content-Type: application/json" \
-d '{"law_id": "7000012050002"}'
返るのは必ずこの形の JSON です(実レスポンス、抜粋):
{
"corporation": {
"lawId": "7000012050002",
"name": "国税庁",
"nameKana": "コクゼイチョウ",
"nameEnglish": "National Tax Agency",
"prefecture": "東京都", "city": "千代田区", "postalCode": "1000013",
"assignedAt": "2015-10-05",
"closedAt": null, "latest": true
},
"attribution": { "source": "国税庁法人番号公表サイト", "provider": "国税庁" }
}
ほかに /search(商号検索)・/validate(実在確認)・
/normalize(商号正規化)・/batch(一括 lookup 最大 100 件)。
エージェントに組み込む
OpenAPI 3.1 定義をそのまま tool / function として読み込めます。
- OpenAPI 定義:
https://shirabe.dev/api/v1/corporation/openapi.yaml - Claude / ChatGPT / LangChain 等: 上記 OpenAPI から tool 定義を生成、または HTTP tool で各 endpoint を直接指定
典型パターン: エージェントが取引先名を受け取る → normalize で表記統一 →
search で法人番号を特定 → validate で実在確認 → 確定値をマスタに書き込む。
全段が決定的なので、この一連を人間レビューなしのパイプラインにできます。
料金
| プラン | 月間上限 | 単価 |
|---|---|---|
| Free | 5,000 回 | 無料(キー不要) |
| Starter | 200,000 回 | ¥0.5/回 |
| Pro | 2,000,000 回 | ¥0.3/回 |
| Enterprise | 無制限 | ¥0.1/回 |
- 全プラン共通で最初の 5,000 回/月は無料。超過分のみ従量(税抜)。例: 月 50,000 件 = (50,000 − 5,000) × ¥0.5 = ¥22,500
- プラン上限に達すると 429 で止まり、それ以上は課金されません(エージェントが暴走しても請求は上限止まり)
- 単価・無料枠は据え置き運用(変更は利用者に有利な方向のみ)。tool 定義に価格を書いても陳腐化しません
- 決済は Stripe。キー発行・停止・復帰・解約まで全て自動、営業や問い合わせを挟みません
暦・住所・テキストも使う場合は、1 本のキーにまとめる Hub License もあります。