Skip to content

endennn/torify-examples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

torify-examples

Code examples for Torify — Japanese locale APIs for AI agents.

40 endpoints for wareki (era dates), invoice validation, corporate lookup, address normalization, bank/branch search (full Zengin database — 1,152 institutions), legal holiday (Labor Standards Act), school code, and more.

torify.dev License: MIT Smithery Glama MCP.so

Listed on


Pricing

Plan Price Limit Auth method
Free Trial Free 100 calls/month X-Trial-Key (email signup)
MCP Free 100 req/day/IP No auth
x402 $0.02/call Unlimited X-PAYMENT header (USDC on Base L2)
Pro $49/mo Unlimited (fair use) X-API-Key
Enterprise $499/mo Unlimited + SLA X-API-Key

Get a free trial key

curl -X POST https://torify.dev/v1/trial/signup \
  -H "Content-Type: application/json" \
  -d '{"email":"you@example.com"}'
# { "ok": true, "data": { "trialKey": "tk_..." } }

Use the returned key as the X-Trial-Key header. Limit: 100 calls/month, resets monthly.

curl -H "X-Trial-Key: tk_..." \
  "https://torify.dev/v1/wareki/convert?direction=g2w&date=2024-05-01"

Quick Start

Free tier (MCP — no wallet, no signup)

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "torify": {
      "type": "http",
      "url": "https://torify-mcp.torify.workers.dev"
    }
  }
}

100 requests/day/IP free. Works in Claude Desktop and Cursor.

x402 per-call ($0.02 USDC on Base L2)

npm install x402-fetch viem
export PRIVATE_KEY="0x..."
npx ts-node typescript/x402-example.ts

API Key subscription ($49/mo)

export TORIFY_API_KEY="your-key"
npx ts-node typescript/apikey-example.ts

Examples

Wareki (era date) conversion

# Gregorian → Wareki
curl "https://torify.dev/v1/wareki/convert?direction=g2w&date=2024-05-01"
# { "ok": true, "data": { "era": "令和", "eraYear": 6, "formatted": "令和6年5月1日" } }

# Wareki → Gregorian (edge case: Showa ended Jan 7, 1989; Heisei started Jan 8, 1989)
curl "https://torify.dev/v1/wareki/convert?direction=w2g&era=showa&eraYear=64&month=1&day=7"
# { "ok": true, "data": { "gregorian": "1989-01-07" } }

Invoice number validation

# Format + check digit validation (no payment needed)
curl "https://torify.dev/v1/invoice/validate?number=T7000012050002"
# { "ok": true, "data": { "valid": true } }

Status: NTA registry integration is pending external API approval. Coming soon.

# NTA registry lookup — is this T-number actually registered?
curl "https://torify.dev/v1/invoice/verify?number=T7000012050002" \
  -H "X-API-Key: $TORIFY_API_KEY"
# { "ok": true, "data": { "registered": true, "registrantName": "国税庁", "confidence": 0.99 } }

Corporate number lookup

Status: Corporate number lookup is pending external API approval. Coming soon.

curl "https://torify.dev/v1/houjin/lookup?number=7000012050002" \
  -H "X-API-Key: $TORIFY_API_KEY"
# { "ok": true, "data": { "name": "国税庁", "address": "東京都千代田区霞が関3丁目1番1号", "status": "active" } }

Postal code lookup

curl "https://torify.dev/v1/postal/lookup?zipcode=1000013"
# { "ok": true, "data": { "prefecture": "東京都", "city": "千代田区", "town": "霞が関" } }

Phone number validation

# Tokyo (2-digit area code 03)
curl "https://torify.dev/v1/phone/validate?phone=03-1234-5678"
# { "ok": true, "data": { "valid": true, "type": "landline", "region": "東京" } }

# Rural (4-digit area code 0266)
curl "https://torify.dev/v1/phone/validate?phone=0266-12-3456"
# { "ok": true, "data": { "valid": true, "type": "landline", "region": "長野" } }

Address normalization

curl "https://torify.dev/v1/address/normalize" \
  --get --data-urlencode "address=東京都千代田区霞が関3丁目1番1号" \
  -H "X-API-Key: $TORIFY_API_KEY"
# { "ok": true, "data": { "prefecture": "東京都", "city": "千代田区", "town": "霞が関", "block": "3丁目1番1号" } }

Bank lookup, search, and list (full Zengin database, 1,150+ banks)

# Look up by bank code + branch code
curl "https://torify.dev/v1/bank/lookup?bankCode=0001&branchCode=001" \
  -H "X-API-Key: $TORIFY_API_KEY"
# { "ok": true, "data": { "bankName": "みずほ銀行", "bankNameEn": "Mizuho Bank",
#                          "branchName": "東京営業部", "found": true, "branchFound": true } }

# Search banks by partial name (kanji / kana / romaji)
curl "https://torify.dev/v1/bank/search" --get --data-urlencode "name=みずほ" \
  -H "X-API-Key: $TORIFY_API_KEY"
# { "ok": true, "data": { "mode": "bank", "hits": [...], "total": 2 } }

# Search branches within a specific bank
curl "https://torify.dev/v1/bank/search?bankCode=0001" --get --data-urlencode "name=東京" \
  -H "X-API-Key: $TORIFY_API_KEY"
# { "ok": true, "data": { "mode": "branch", "hits": [...] } }

# Paginated full bank list
curl "https://torify.dev/v1/bank/list?limit=5" \
  -H "X-API-Key: $TORIFY_API_KEY"
# { "ok": true, "data": { "total": 1152, "banks": [...] } }

Bank transfer validation (Zengin format)

curl "https://torify.dev/v1/bank/transfer/validate?bankCode=0001&branchCode=001&accountType=1&accountNumber=1234567" \
  -H "X-API-Key: $TORIFY_API_KEY"
# { "ok": true, "data": { "valid": true, "accountTypeName": "普通", "isYucho": false } }

Legal holiday check (Labor Standards Act Art. 35)

# Standard 5-day work week (Sun = legal holiday, Sat = non-legal rest day)
curl "https://torify.dev/v1/legal-holiday/check?date=2024-05-05&restDays=sun,sat" \
  -H "X-API-Key: $TORIFY_API_KEY"
# { "ok": true, "data": { "isLegalHoliday": true, "overtimePremiumRate": 0.35,
#                          "overtimePremiumRateLegalNonHoliday": 0.25,
#                          "legalReference": "Labor Standards Act Article 35 (労働基準法第35条)" } }

MEXT school code validation (13-char)

curl "https://torify.dev/v1/school-code/validate?code=B213123456X00" \
  -H "X-API-Key: $TORIFY_API_KEY"
# { "ok": true, "data": { "valid": true, "schoolType": "elementary",
#                          "establishment": "public_prefectural", "prefectureJa": "東京都" } }

Self IP address (free, no auth)

curl "https://torify.dev/v1/whoami"
# { "ok": true, "data": { "ip": "...", "country": "JP", "userAgent": "..." } }

TypeScript with x402 (autonomous payment)

import { wrapFetchWithPayment } from "x402-fetch";
import { createWalletClient, http } from "viem";
import { base } from "viem/chains";
import { privateKeyToAccount } from "viem/accounts";

const wallet = createWalletClient({
  account: privateKeyToAccount(process.env.PRIVATE_KEY as `0x${string}`),
  chain: base,
  transport: http()
});
const fetch402 = wrapFetchWithPayment(fetch, wallet);

// Agent pays $0.02 USDC automatically — no API key needed
const res = await fetch402("https://torify.dev/v1/invoice/verify?number=T7000012050002");
const { ok, data } = await res.json();
console.log(data.registered, data.confidence); // true, 0.99

Python with API Key

import os, requests

headers = {"X-API-Key": os.environ["TORIFY_API_KEY"]}

r = requests.get(
    "https://torify.dev/v1/address/normalize",
    params={"address": "東京都千代田区霞が関3丁目1番1号"},
    headers=headers
)
data = r.json()["data"]
print(data["prefecture"], data["city"], data["town"])
# 東京都 千代田区 霞が関

All Endpoints

Full docs: torify.dev/docs

All 40 endpoints (paid $0.02/call + free MCP / whoami):

Category Endpoints
Era & Date wareki/convert, holiday/check, age/calculate, legal-holiday/check
Legal & Tax invoice/validate, invoice/verify, tax/calculate, eltax/check (POST)
Corporate houjin/lookup, industry/lookup
Address postal/lookup, address/normalize, region/lookup, coordinate/convert
Geo geo/geocode (address → lat/lng via GSI, PDL 1.0), geo/reverse-geocode (lat/lng → municipality + town via GSI, PDL 1.0)
Legal Search law/search (Japanese law search via e-Gov API v2, 政府標準利用規約)
Text name/romanize, name/split, name/validate, kana/convert, text/normalize, kanji/to-kana, kanji/normalize (POST)
Finance bank/lookup, bank/search, bank/list, bank/transfer/validate, yucho/convert, payment/3ds/check
Identity mynumber/validate, passport/validate, license/validate, insurance/validate, plate/validate, barcode/validate, phone/validate
Education school-code/validate
Diagnostic whoami (free, no auth required)
Bulk (free) wareki/convert/bulk, invoice/validate/bulk (60 req/min/IP)

License

MIT — examples only. The Torify API service is proprietary.

About

Code examples (curl / TypeScript / Python / MCP) for Torify — 36 Japanese locale APIs for AI agents. Wareki dates, invoice T-numbers, 法人番号, postal, name romanization. $0.02/call via x402.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors