Trimix Zipcode Search API — v1 ドキュメント
バージョン: v1(安定版)
ベースURL:https://api.trimix-data.io/v1
最終更新: 2026-06-02
概要
郵便番号から住所一覧を取得するAPIです。日本郵便の公開データ(郵便番号データ)をもとに月次更新し、郵便番号の前方一致で該当する住所を返します。
主なユースケース:
- 申込フォーム・ECの注文画面で郵便番号から住所を自動入力する
- 漢字・カナの両方を取得してふりがな欄を自動補完する
- 郵便番号の上位桁(3〜7桁)で前方一致検索し、該当エリアの住所候補を提示する
対象バージョン情報
| バージョン | 状態 | サポート期限 |
|---|---|---|
| v1(本ドキュメント) | ✅ 安定版 | 未定 |
認証
すべてのエンドポイントは x-api-key ヘッダーに有効なAPIキーが必要です。
GET /v1/zipcodes/1000001
x-api-key: your_api_key_here
APIキーは Trimixダッシュボード から取得できます。
エンドポイント一覧
GET /v1/zipcodes/{zipcode}
郵便番号(半角数字3〜7桁・ハイフンなし)の前方一致で住所を検索します。該当する住所を最大30件返します。
- 7桁を指定すると、その郵便番号に紐づく住所(複数町域がある場合は複数件)を返します。
- 3〜6桁を指定すると、そのプレフィックスに前方一致する住所を返します。
- 該当する住所がない場合も
200 OK(count: 0・results: []) を返します(404は使いません)。 - 該当が30件を超える場合は30件に切り詰め、
truncated: trueを返します。
リクエスト:
GET /v1/zipcodes/1000001
x-api-key: your_api_key_here
レスポンス(200 OK):
{
"zipcode": "1000001",
"count": 1,
"truncated": false,
"results": [
{
"zip1": "100",
"zip2": "0001",
"prefecture": "東京都",
"prefecture_kana": "トウキョウト",
"city": "千代田区",
"city_kana": "チヨダク",
"town": "千代田",
"town_kana": "チヨダ",
"prefecture_code": "13101"
}
]
}
パスパラメータ:
| パラメータ | 必須 | 説明 |
|---|---|---|
zipcode | ✅ | 検索する郵便番号プレフィックス(半角数字3〜7桁・ハイフンなし) |
レスポンスフィールド:
| フィールド | 型 | 説明 |
|---|---|---|
zipcode | string | リクエストされた検索プレフィックス(3〜7桁) |
count | number | 返却件数(0〜30) |
truncated | boolean | 30件を超過して切り詰めた場合 true |
results | array | 住所アイテム配列(最大30件) |
results[].zip1 | string | 郵便番号の上位3桁(zip2 と連結すると7桁・ハイフンなし) |
results[].zip2 | string | 郵便番号の下位4桁(zip1 と連結すると7桁・ハイフンなし) |
results[].prefecture | string | 都道府県名(漢字) |
results[].prefecture_kana | string | 都道府県名(全角カナ) |
results[].city | string | 市区町村名(漢字) |
results[].city_kana | string | 市区町村名(全角カナ) |
results[].town | string | 町域名(漢字) |
results[].town_kana | string | 町域名(全角カナ) |
results[].prefecture_code | string | 全国地方公共団体コード(先頭2桁が都道府県) |
エラーカタログ
すべてのエラーレスポンスは RFC 7807 Problem Details 形式(application/problem+json)です。
{
"type": "https://api.trimix-data.io/errors/<error-code>",
"title": "エラーの概要",
"status": 400,
"detail": "詳細メッセージ",
"instance": "/v1/zipcodes/100-0001"
}
| エラーコード | HTTPステータス | 原因 | 対処法 |
|---|---|---|---|
invalid-zipcode-format | 400 | 郵便番号の形式が不正(半角数字以外・8桁以上・ハイフン入り・全角等) | 半角数字3〜7桁(ハイフンなし)で指定してください |
zipcode-too-short | 400 | 郵便番号が3桁未満(前方一致検索には最低3桁が必要) | 3桁以上で指定してください |
unauthorized | 401 | APIキーが未指定または無効 | x-api-key ヘッダーに有効なAPIキーを設定してください |
rate-limit-exceeded | 429 | レート制限超過 | しばらく待ってから再試行してください |
internal-error | 500 | 内部エラー | しばらく待ってから再試行してください。解消しない場合はサポートへ |
「該当住所なし」は 404 ではありません。 郵便番号が形式的に正しい限り、結果が0件でも
200 OK(count: 0・results: [])を返します。
コードサンプル
curl
# 7桁で検索
curl -H "x-api-key: your_key" \
https://api.trimix-data.io/v1/zipcodes/1000001
# 3桁(前方一致)で検索
curl -H "x-api-key: your_key" \
https://api.trimix-data.io/v1/zipcodes/100
Node.js
const API_KEY = process.env.TRIMIX_API_KEY;
const BASE_URL = 'https://api.trimix-data.io/v1';
const response = await fetch(`${BASE_URL}/zipcodes/1000001`, {
headers: { 'x-api-key': API_KEY },
});
if (!response.ok) {
const error = await response.json();
console.error(error.detail);
}
const { count, results } = await response.json();
for (const addr of results) {
console.log(`${addr.prefecture}${addr.city}${addr.town}`);
}
Python
import httpx
API_KEY = "your_api_key"
BASE_URL = "https://api.trimix-data.io/v1"
response = httpx.get(
f"{BASE_URL}/zipcodes/1000001",
headers={"x-api-key": API_KEY}
)
response.raise_for_status()
data = response.json()
for addr in data["results"]:
print(f"{addr['prefecture']}{addr['city']}{addr['town']}")
レート制限
| プラン | リクエスト/秒 | リクエスト/月 |
|---|---|---|
| Free | 1 | 100 |
| Hobby | 10 | 10,000 |
| Startup | 50 | 100,000 |
| Business | 200 | 1,000,000 |
| Enterprise | 制限なし | 制限なし |
レート制限超過時は 429 Too Many Requests + rate-limit-exceeded エラーが返ります。
データ更新サイクル
このAPIのデータは日本郵便「郵便番号データ」の公開データをもとに更新されます。
| 項目 | 詳細 |
|---|---|
| 更新時刻 | 毎日 JST 02:00 頃(日本郵便データの更新有無を確認し、更新があれば取り込み) |
| データソース | 日本郵便 郵便番号データ(利用規約) |
| 更新方式 | 月次差分の取り込み(add/del)。前回と内容が同一の場合はスキップ |
| データの鮮度 | 最終更新日はサービスページのデータ統計、または取り込み履歴で確認できます |
日本郵便側のデータ配信の遅延・仕様変更等により、取り込みが遅延する場合があります。