● 永続無料 登録不要 オフライン対応 MIT

日本の郵便番号、
CDN から 配るデータセット。

登録不要・無料・無制限で使える、個人開発者と OSS のための郵便番号データセット。
Cloudflare Pages から配信される 120,677 件の正規化済みデータを、各言語の SDK でオフラインまで持っていける。

install
$ npm i jpzip
NIPPON JPZIP
¥0FOREVER
郵便番号
データセット
2026-05 版
件数
120,677
prefix
948
形式
JSON · gzip / br
更新
月 2 回 · 自動
license
MIT + Public Domain
● JPZIP ● v1.0 2026-05·01
PLAYGROUND

7 桁、入れてみる。

ブラウザから直接 jpzip.nadai.dev を叩きます。CORS が通れば本物のデータ、通らなければデモ用フォールバックが返ります。

QUERY

EXAMPLES

7 桁の数字を入力すると /p/{prefix}.json を fetch して該当エントリを抽出します。

待機中GET /p/—.json
左に郵便番号を入れてください
120,677
Total Zipcodes
948
3桁 Prefix
10files
1-digit groups
¥0/月
課金軸ゼロ
SDK

3 行で読める SDK。

プロトコル仕様が安定しているので、SDK 本体は数十行。各言語で同じシグネチャを揃えています。

import { lookup, preload } from "jpzip"

// 単発検索 — /p/231.json を fetch して結果を抽出
const entry = await lookup("2310831")
// → { prefecture: "神奈川県", city: "横浜市中区",
//     towns: [{ town: "矢口台", kana: "ヤグチダイ" }], ... }

// オフライン化 — 全件を SDK 内にキャッシュ
await preload({ scope: "all" })

// 以降の lookup() はネットワーク不要
const e2 = await lookup("1500001")
{ "prefecture": "神奈川県", "city": "横浜市中区", "towns": [{ "town": "矢口台" }] }
特徴

構造的に、無料。

Worker・R2・KV を一切使わない設計。アクセスが何億あっても課金軸が存在しません。

01
¥

永続的に無料

Cloudflare Pages の無料枠のみで成立。約 1,000 ファイル × 25 MiB 未満、課金軸そのものが存在しない構造。

02

オフライン対応

preload({ scope: "all" }) で全件を SDK にキャッシュ。以降はネットワーク不要で動作。

03
A

登録・認証なし

API キー不要。CORS は全オリジン許可。ブラウザから直接 fetch して使えます。

04

月次自動更新

毎月 1 日と 15 日に GitHub Actions が日本郵便の最新データを取り込み、CDN へデプロイ。

05
ローマ

漢字・カナ・ローマ字

KEN_ALL と KEN_ALL_ROME を結合済み。city_code (総務省コード) も付与。

06

MIT & Public Domain

SDK は MIT。データは元データが Public Domain 相当のため、商用利用も再配布も自由。