RegBase Public API

登録不要の無料APIで、
企業・行政処分データを取得。

開発者、小規模AIスタートアップ、社内ツール向けの軽量APIです。 APIキーは不要で、レスポンスはJSON。過度な負荷を避けるため60秒あたり10リクエストに制限しています。

Quick start

30秒で最初のレスポンスを見る

まずは `GET /api/v1/search` を使ってください。企業プロフィールと行政処分レコードをまとめて返すため、RAG、AIエージェント、社内チェックツールの最初の接続先に向いています。

https://regbase.jp/api/v1/search?q=楽天&limit=5
JSONを開く

エンドポイント

GET/api/v1/search?q={query}
企業検索と行政処分検索をまとめて実行します。最初に試す用途に向いています。 レスポンス全体で最大10件です。
GET/api/v1/companies?q={query}
企業名、英語名、法人番号で企業プロフィールを検索します。 `q` は必須です。`limit` は1から10まで指定できます。
GET/api/v1/enforcements?company={name}
行政処分レコードを取得します。`company` / `q` / `corporate_number` / `law` / `authority` / `action_type` / `limit` が使えます。 少なくとも1つの絞り込み条件が必要です。

curl例

curl "https://regbase.jp/api/v1/search?q=楽天&limit=5" \
  -H "X-RegBase-Client: your-app-name" \
  -H "X-RegBase-Contact: dev@example.com"

`X-RegBase-Client` は任意ですが、送ってもらえると利用状況を把握しやすくなります。 `X-RegBase-Contact` も任意です。登録やAPIキー発行は不要です。

JavaScript例

const res = await fetch("https://regbase.jp/api/v1/search?q=楽天&limit=5", {
  headers: {
    "X-RegBase-Client": "your-app-name",
    "X-RegBase-Contact": "dev@example.com"
  }
});

const json = await res.json();
console.log(json.data.companies, json.data.enforcements);

Python例

import requests

res = requests.get(
    "https://regbase.jp/api/v1/search",
    params={"q": "楽天", "limit": 5},
    headers={
        "X-RegBase-Client": "your-app-name",
        "X-RegBase-Contact": "dev@example.com",
    },
)

print(res.json()["data"])

Minute Limit

10/分

IP、User-Agent、任意のクライアント名から利用単位を判定します。

Daily Limit

300/日

匿名クライアントごとの24時間ローリング上限です。

Max Limit

10件

全件取得・ページング・空検索での一括取得は提供しません。

データ保護と乱用防止

  • 匿名APIは1分あたり10リクエスト、24時間あたり300リクエストに制限しています。
  • `/api/v1/companies` は `q` 必須、`/api/v1/enforcements` は少なくとも1つの絞り込み条件が必須です。
  • `limit` の上限は10件です。`offset` や `cursor` による全件ページングはありません。
  • 短時間に多数の異なる検索語、法人番号らしき連番探索が続いた場合は `429 automated_enumeration_detected` を返します。

利用ログについて

公開APIでは、Rate Limitと利用状況把握のために、エンドポイント、検索条件、 IP由来の識別子、User-Agent、Referer、`X-RegBase-Client` を記録します。個別のメール登録やアカウント作成は行いません。