Official thin SDK for the Shirabe Japan-specific AI-native API platform — composite enrich (address, name, corporate number, calendar) in one call. Zero dependencies.
Project description
shirabe-sdk (Python)
Official thin SDK for Shirabe — the Japan-specific, AI-native API platform. Zero dependencies (standard library only). Python 3.8+.
The headline is composite enrich: normalize a messy customer record across four Japanese identifiers — address, personal name, corporate number, calendar date — in a single call.
pip install shirabe-sdk
The import name stays shirabe:
Quick start
import os
from shirabe import ShirabeClient
shirabe = ShirabeClient(api_key=os.environ.get("SHIRABE_API_KEY"))
out = shirabe.enrich({
"address": "東京都港区六本木6-10-1 森タワー",
"name": "山田太郎",
"corporate_number": "1234567890123",
"date": "2026-07-01",
})
out["results"]["address"]["status"] # "ok" | "skipped" | "unavailable" | "error"
out["results"]["name"]["split"] # {"family": "山田", "given": "太郎", ...}
out["attribution"] # aggregated CC BY 4.0 / dictionary attribution (do not strip)
fields is auto-detected from the record. Pass it explicitly to limit components:
shirabe.enrich({"name": "山田太郎", "date": "2026-07-01"}, fields=["name", "calendar"])
Access & pricing
enrich is a Hub Pro / Hub Enterprise license capability (api_key="shrb_lic_..."),
with an anonymous trial of 500 calls/month per IP for evaluation. Each component degrades
independently; if every requested component is unavailable the call raises ShirabeError with
HTTP 503 and the per-component results available on err.body.
See https://shirabe.dev/pricing for SKUs and an AI-callable quote endpoint.
Errors
Non-2xx responses raise ShirabeError with the parsed body attached:
from shirabe import ShirabeError
try:
shirabe.enrich({"address": "..."})
except ShirabeError as err:
err.code # e.g. "ENRICH_TRIAL_LIMIT_EXCEEDED"
err.status # HTTP status
err.body["error"]["license_recommend"] # hub_pro recommendation on 403/429
Other endpoints
shirabe.calendar("2026-07-01", categories=["wedding"]) # 六曜・暦注・用途別スコア
shirabe.normalize_address("東京都港区六本木6-10-1") # ABR 準拠の住所正規化
shirabe.request("GET", "/api/v1/...") # low-level escape hatch
Custom transport
For non-standard runtimes or testing, inject a transport callable
(method, url, headers, body, timeout) -> (status, text):
ShirabeClient(transport=my_transport, base_url="https://staging.shirabe.dev")
License
MIT © Techwell Inc. Address data normalization is derived from the Digital Agency Address Base
Registry (CC BY 4.0); the attribution field returned by the API must not be stripped downstream.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file shirabe_sdk-0.1.0.tar.gz.
File metadata
- Download URL: shirabe_sdk-0.1.0.tar.gz
- Upload date:
- Size: 7.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a86a0893c767fd21157a09b516b0836d89d36d993609c4db8eb491bff8050dfb
|
|
| MD5 |
1e91454767ae19c773a67cf815397bb1
|
|
| BLAKE2b-256 |
7bd562888567af4d3f538c45a3f4d1b335835a8cd045745c0349e98477723798
|
File details
Details for the file shirabe_sdk-0.1.0-py3-none-any.whl.
File metadata
- Download URL: shirabe_sdk-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d8434efdc7a5e52539df8f465cadd7ee36954acb606df4ac71a4e09d8c63f69b
|
|
| MD5 |
145b44953a46a34359d763dce63cf423
|
|
| BLAKE2b-256 |
ca4146fb1ac60e4bdeaf663870601ab1cde91ae0b4d109436a798bdcc921c2a7
|