重要なお知らせ吸収分割公告 — ケンオール事業の権利義務承継についてお知らせ一覧 →

学校コードAPI リファレンス

要約: 文部科学省が指定する13桁の学校コードから、学校名・所在地・学校種を取得するREST API。学校情報検索 (条件指定での絞り込み) と学校コード検索 (コード指定で1件取得) の2系統を提供。本APIはプレミアムプラン以上でご利用いただけます (詳細は 料金プラン)。

情報

このページは技術リファレンスです。ユースケース・料金・導入事例はこちら

エンドポイント一覧この見出しへのリンク

メソッドパス用途
GET/v1/school/{学校コード}学校コード検索
GET/v1/school/?q=...学校情報検索

共通仕様この見出しへのリンク

項目内容
認証Authorization: Token YOUR_API_KEY
プランプレミアムプラン以上 (詳細は 料金プラン)
Content-Typeapplication/json

GET /v1/school/{学校コード}(学校コード検索)この見出しへのリンク

パスパラメータこの見出しへのリンク

名前必須説明
{学校コード}string必須文部科学省によって全国の学校ごとに設定された、13桁の学校コード"F113110102700"

curl サンプルこの見出しへのリンク

curl -H "Authorization: Token YOUR_API_KEY" \
  https://api.kenall.jp/v1/school/F113110102700

レスポンス例この見出しへのリンク

{
  "version": "2024-08-28",
  "data": {
    "code": "F113110102700",
    "type": "F1",
    "jurisdiction_prefecture_code": "13",
    "establishment_type": 1,
    "branch": 1,
    "name": "東京大学",
    "address_raw": "東京都文京区本郷7-3-1",
    "addresses": [
      {
        "postal_code": "1130033",
        "jisx0402": "13105",
        "prefecture": "東京都",
        "prefecture_kana": "トウキョウト",
        "prefecture_roman": "Tokyo",
        "city": "文京区",
        "city_kana": "ブンキョウク",
        "city_roman": "Bunkyo-ku",
        "street_number": "本郷7-3-1",
        "town": "本郷",
        "kyoto_street": null,
        "block_lot_num": "7-3-1",
        "building": null,
        "floor_room": null
      }
    ],
    "established_date": "2021-01-20",
    "abolished_date": null,
    "school_survey_number": "0172",
    "new_code": []
  }
}

与えられた検索クエリを元に、該当する学校情報リソースを取得します。学校コード検索と異なり、レスポンスの data配列になる点にご注意ください。

curl サンプルこの見出しへのリンク

# 学校名で検索
curl -H "Authorization: Token YOUR_API_KEY" \
  "https://api.kenall.jp/v1/school/?q=name:東京大学"
 
# 学校名 × 地域ファセット
curl -H "Authorization: Token YOUR_API_KEY" \
  "https://api.kenall.jp/v1/school/?q=name:東京大学&facet_area=/東京都"

レスポンス例 (検索)この見出しへのリンク

{
  "version": "2024-08-28",
  "data": [
    { ... },
    { ... },
    { ... }
  ],
  "query": "name:...",
  "count": 3,
  "offset": 0,
  "limit": 100,
  "facets": {
    "area": [
      ["/東京都", 2]
    ],
    "type": [
      ["/大学", 1],
      ["/中等教育学校", 1]
    ],
    "establishment_type": [
      ["/公立", 2]
    ],
    "branch": [
      ["/本校", 2]
    ]
  }
}

レスポンス・トップレベル (検索)この見出しへのリンク

名前説明
versionstringデータのバージョン番号"2024-08-28"
dataarray学校情報レコードの配列 (フィールド構成は上記単一取得と同じ)
querystringq パラメータに与えられたクエリ文字列"name:東京大学"
countnumberクエリに合致したレコードの総数 (dataの件数ではない)1
offsetnumberリクエストで指定された offset0
limitnumberリクエストで指定された limit100
facetsobject / nullファセットパラメータが与えられた場合のみ出力。area / type / establishment_type / branch の 4ファセット下表

facets オブジェクトの内訳は以下の通りです。

名前説明
areaarray地域ファセットの結果[["/東京都", 1]]
typearray学校種ファセットの結果[["/大学", 1]]
establishment_typearray設置区分ファセットの結果[["/公立", 1]]
brancharray本分校ファセットの結果[["/本校", 1]]

クエリパラメータこの見出しへのリンク

名前必須説明
qstring必須検索クエリ。仕様は下記「検索クエリの仕様」を参照"name:東京大学"
offsetnumber省略可結果を取得するオフセット値。省略時は 00
limitnumber省略可最大取得件数を指定する。1以上100以下の値を指定できる50
facet_areastring省略可地域ファセットの階層を指定する"/東京都/文京区"
facet_prefecturestring省略可都道府県ファセットの階層を指定する (jurisdiction_prefecture_code に基づく)"/東京都"
facet_typestring省略可学校種ファセットの階層を指定する"/大学"
facet_establishment_typestring省略可設置区分ファセットの階層を指定する"/公立"
facet_branchstring省略可本分校ファセットの階層を指定する"/本校"

検索クエリの仕様この見出しへのリンク

  • 部分一致検索のみ行います。
  • 検索ワードは一つ以上の半角スペース・タブ・改行文字で区切ります。
  • 検索ワードの間に AND / OR を挟むと、「かつ」「もしくは」といった条件で検索できます。キーワードがない場合は OR として扱われ BM25 スコアで順位付けされます (短いテキストが対象のため全ワード一致が実質 AND と同等の結果になります)。
  • 特定の項目のみを対象に検索したい場合は、項目名:キーワード の形式を使います (例: 学校名に「東京大学」を含む → name:東京大学)。
  • 特定のファセット階層以下を対象にしたい場合は _facet_area:/東京都 のように指定します。
意味
東京大学 AND type:F1「東京大学」かつ「学校種が大学」の両方を含むレコード
postal_code:1130033 OR jisx0402:13105いずれか (または両方) を含むレコード
東京大学 type:F1OR + BM25 (短テキスト対象のため両方に合致するレコードが実質 AND 相当で上位)

クエリの実行例この見出しへのリンク

  • 東京大学 を検索: https://api.kenall.jp/v1/school/?q=東京大学
  • 学校名に東京大学を含み、かつ都道府県が東京都の学校を1件だけ検索: https://api.kenall.jp/v1/school/?q=name:東京大学 AND prefecture_code:13&limit=1
  • 学校種が大学で、かつ学校名に東京大学を含む学校を検索: https://api.kenall.jp/v1/school/?q=name:東京大学 AND type:F1

検索対象フィールドこの見出しへのリンク

検索クエリ (q) で項目指定できるフィールドは以下の通りです。

検索項目説明
namestring学校名。設置者名は入れないことを原則とするが、学校コード上の学校種・都道府県番号・設置区分が同一で同じ名称の学校が同一都道府県内に存在する場合 (例: 県立と市立で同じ名称の高校) には、区別のために設置者名を含めて記載する"東京大学"
postal_codestring学校所在地の文字情報を基に設定した郵便番号。全国町・字ファイルを基に設定しているため、外字や誤字脱字がある場合には正確な郵便番号が設定されないことがある。個別郵便番号 (ビル・大口事業所) には対応していない"1130033"
jisx0402string学校所在地の文字情報を基に設定した全国地方公共団体コード。外字や誤字脱字がある場合には正確なコードが設定されないことがある"13105"
prefecture_codestring都道府県番号。学校コードの都道府県番号にならう。JIS X 0401 と同一。jurisdiction_prefecture_code に基づく"13"
address_rawstring学校所在地。学校情報に記載されている通り"東京都文京区本郷7-3-1"
typestring学校種。A1:幼稚園 / A2:幼保連携型認定こども園 / B1:小学校 / C1:中学校 / C2:義務教育学校 / D1:高等学校 / D2:中等教育学校 / E1:特別支援学校 / F1:大学 / F2:短期大学 / G1:高等専門学校 / H1:専修学校 / H2:各種学校"F1"
_facet_areastring地域ファセットの階層を指定する"/東京都"
_facet_jurisdiction_prefecturestring都道府県ファセットの階層を指定する。addresses 内の prefecture とは異なり、学校コードデータに記載された都道府県番号。学校所在地の都道府県と一致しない場合がある"/東京都"
_facet_typestring学校種ファセットの階層を指定する"/大学"
_facet_establishment_typestring設置区分ファセットの階層を指定する"/公立"
_facet_branchstring本分校ファセットの階層を指定する"/本校"

検索クエリの正規化この見出しへのリンク

学校情報APIは検索キーワードを正規化します。これにより、入力文字列のフォーマットを整える必要なく必要なレコードを取得できます。正規化されるフィールドは name / postal_code / jisx0402 / prefecture_code / address_raw / type です。

正規化ルールこの見出しへのリンク

  • 全角・半角の正規化: 検索時には全角・半角を区別しません (例: 半角カナ サイバー大学サイバー大学 を検索)。
  • かな小文字・大文字の正規化: どちらでも入力可能です (例: キヨウトフキョウトフキヨウトフ のどちらかを含むレコードを検索)。
  • 歴史的仮名遣いの正規化: はそれぞれ と区別しません (例: ゐろはにほへとゐろはにほへといろはにほへと のどちらかを検索)。
  • 旧字体・非標準文字の正規化: 旧字体や非標準文字は新字体と区別しません。詳細は下記を参照してください。

旧字体・非標準文字の正規化この見出しへのリンク

学校コードAPIは、旧字体や非標準文字による検索に対応しています。例えば非JIS漢字である で検索した場合、常用漢字の を検索します。

  • (例) 大學大学 あるいは 大學 を含むレコードを検索する。
  • (例) 国学院大学國學院大學 を検索する。

一部未対応の漢字もあります。制限事項 も参照してください。

ファセットこの見出しへのリンク

ファセットのパス名は必ず / で始まり、各階層は / で区切られます。ルート階層は / で表されます。学校コードのファセットは以下の4種類です。

  • 地域ファセット (facet_area): 都道府県や市区町村を表す。/{都道府県} または /{都道府県}/{市区町村} (例: /東京都/千代田区)
  • 都道府県ファセット (facet_prefecture): jurisdiction_prefecture_code に基づく都道府県。/ または /{都道府県} (例: /東京都)
  • 学校種ファセット (facet_type): / / /幼稚園 / /幼保連携型認定こども園 / /小学校 / /中学校 / /義務教育学校 / /高等学校 / /中等教育学校 / /特別支援学校 / /大学 / /短期大学 / /高等専門学校 / /専修学校 / /各種学校
  • 設置区分ファセット (facet_establishment_type): / / /国立 / /公立 / /私立
  • 本分校ファセット (facet_branch): / / /本校 / /分校 / /廃止

レスポンスフィールドこの見出しへのリンク

トップレベルこの見出しへのリンク

名前説明
versionstringデータのバージョン番号。YYYY-MM-DD 形式のデータ作成日付"2024-08-28"
dataobject学校情報レコード (単一取得の場合) または array(検索の場合)後述

data オブジェクトのフィールド仕様 (12フィールド)この見出しへのリンク

名前説明
codestring学校コード。文部科学省によって全国の学校ごとに設定された、当該学校に固有の13桁の学校コード"F113110102700"
typestring学校種。A1: 幼稚園 / A2: 幼保連携型認定こども園 / B1: 小学校 / C1: 中学校 / C2: 義務教育学校 / D1: 高等学校 / D2: 中等教育学校 / E1: 特別支援学校 / F1: 大学 / F2: 短期大学 / G1: 高等専門学校 / H1: 専修学校 / H2: 各種学校"F1"
jurisdiction_prefecture_codestring都道府県番号。学校コードの都道府県番号にならう。JIS X 0401 と同一。addresses 内の prefecture とは異なり、学校コードデータに記載された都道府県番号。学校所在地の都道府県と一致しない場合がある"01"
establishment_typenumber設置区分。1: 国立 / 2: 公立 / 3: 私立1
branchnumber本分校。1: 本校 / 2: 分校 / 9: 廃止1
namestring学校名。設置者名は入れないことを原則とするが、同じ名称の学校が同一都道府県内に存在する場合 (例: 県立と市立で同じ名称の高校) には、区別を容易にするために設置者名を含めて記載"東京大学"
address_rawstring学校所在地。学校情報に記載されている通り"東京都文京区本郷7-3-1"
addressesarray学校所在地を表すサブレコード。ケンオールで正規化したもの (複数住所対応の配列)。下表[...]
established_datestring属性情報設定年月日。YYYY-MM-DD"2021-01-20"
abolished_datestring / null属性情報廃止年月日。YYYY-MM-DD"2021-01-20"
school_survey_numberstring / null旧学校調査番号。学校コードへの移行前に当該学校に設定されていた都道府県番号-学校調査番号を記載。但し、大学・短期大学・高等専門学校については、都道府県番号を含めず学校調査番号のみを記載"0172"
new_codearray移行後の学校コード。現行の学校コードを廃止した上で別の学校コードに移行する場合に本データを設定["A201323100055"]

addresses 配列内のサブレコード (14フィールド)この見出しへのリンク

学校所在地をケンオールで正規化したサブレコードです。street_number (町域以下の住所) が town / kyoto_street / block_lot_num / building / floor_room に分解されます。存在しない要素は空文字あるいは null になります。

名前説明
postal_codestring / null学校所在地の文字情報を基に設定した郵便番号。外字や誤字脱字がある場合には正確な郵便番号が設定されないことがある。個別郵便番号 (ビル・大口事業所) には対応していない"1130033"
jisx0402string / null学校所在地の全国地方公共団体コード"13105"
prefecturestring / null学校所在地の都道府県名"東京都"
prefecture_kanastring / null学校所在地の都道府県名 (読み仮名)"トウキョウト"
prefecture_romanstring / null学校所在地の都道府県名 (ローマ字表記)"Tokyo"
citystring / null学校所在地の市区町村および行政区"文京区"
city_kanastring / null学校所在地の市区町村および行政区 (読み仮名)"ブンキョウク"
city_romanstring / null学校所在地の市区町村および行政区 (ローマ字表記)"Bunkyo-ku"
street_numberstring学校所在地の町域以下の住所 (丁目番地等)"本郷7-3-1"
townstring / nullstreet_number を構成する、学校所在地住所の町名"本郷"
kyoto_streetstring / nullstreet_number を構成する、学校所在地住所に含まれる京都の通り名"先斗町通四条上る"
block_lot_numstring / nullstreet_number を構成する、学校所在地住所の号番地"7-3-1"
buildingstring / nullstreet_number を構成する、学校所在地住所のビル名null
floor_roomstring / nullstreet_number を構成する、学校所在地住所の階層及び部屋番号null

HTTPステータス・エラーこの見出しへのリンク

HTTPステータス意味
200OK
401Unauthorized (APIキー未設定/無効)
403Forbidden (契約中のプランに含まれないAPIです)
404Not Found (該当する学校コードなし)
429Too Many Requests (リクエスト量の制限超過)

SDK で呼び出すこの見出しへのリンク

JavaScript SDKこの見出しへのリンク

import { KENALL } from '@ken-all/kenall';
const api = new KENALL('YOUR_API_KEY');
 
const result = await api.getSchool('F113110102700');
console.log(result.data.name);              // => 東京大学
console.log(result.data.addresses[0].city); // => 文京区

条件検索 (searchSchool) も利用できます:

const results = await api.searchSchool({ q: '東京大学' });
console.log(results.data.length); // => ヒット件数

Pythonこの見出しへのリンク

import os, requests
res = requests.get(
    "https://api.kenall.jp/v1/school/F113110102700",
    headers={"Authorization": f"Token {os.environ['KENALL_API_KEY']}"},
    timeout=10,
)
data = res.json()["data"]
print(data["name"], data["addresses"][0]["city"])

このAPIに関する技術FAQこの見出しへのリンク

学校コードは数値型でいいですか?

必ず文字列型で扱ってください。学校コードは英字を含む13桁の文字列です (例: "B113310000027")。

廃校になった学校も取得できますか?

はい。廃校した学校もデータに含まれ、abolished_date(非null = 廃止) や branch: 9(廃止) で識別できます。後継校がある場合は new_code 配列に移行後の学校コードが入ります。

条件検索の q は部分一致ですか?

はい、学校名・所在地に対する部分一致検索です。完全一致したい場合は学校コード (code) で直接取得してください。

旧字体で入力しても検索できますか?

はい。検索キーワードは正規化され、旧字体・非標準文字は新字体と区別されません。例えば 國學院大學国学院大学 で検索できます。全角・半角、かな小文字・大文字、歴史的仮名遣いも区別しません。一部未対応の漢字があります。

OpenAPI スキーマこの見出しへのリンク

OpenAPI スキーマ (YAML): 2024-01-01 / 2025-01-01

関連リファレンスこの見出しへのリンク

最終更新: 2026-07-15