Code-Driven Manifesto: Assessing Japan’s Government Data and APIs

どうも〜おかむーです! Hey — Okamoo here, bringing a coder's eye to government data.
- Governments are publishing more datasets and APIs, but machine-readability and consistency remain uneven.
- e-Gov API catalog exists, some CSVs are open (Digital Agency, Cabinet Office), yet many useful reports stay PDF-locked.
- Technical fixes (standard schemas, OpenAPI, JSON/CSV-first publishing) could unlock rapid civic innovation.
結論
Japan has the foundations for a data-driven public sector — e-Gov portals, an API catalog, and pockets of CSV publishing — but the ecosystem needs stronger engineering practices: consistent machine formats, documented APIs (OpenAPI/JSON Schema), and operational guarantees (rate limits, versioning, uptime). 要するに、ポリシーはあるけど「コードで語る」仕様が足りないんですよね。
Report: what's actually available and what's missing
Inventory from public sources
- e-Gov Digital Agency API portal and API catalog (https://api-catalog.e-gov.go.jp/info/ja/apicatalog/list) enumerate many administrative APIs — good start.
- Ministry of Internal Affairs and Communications (Soumu) pushes an open data strategy emphasizing common APIs and standard data models.
- Practical CSVs exist: Digital Agency hospital CSV, Cabinet Office economic time series CSVs (example: https://www5.cao.go.jp/j-j/wp/wp-je24/csv/d1-1-4.csv), MOFA country-list CSVs. These are gold for devs.
これ見てくださいよ:一方でPDFでしか公開されてない報告書や、CSVがあるけど列名がバラバラ、日時フォーマットが統一されていないデータがまだ多いんです。
Machine-readability and formats
- Positive: CSVs on digital.go.jp are great — straightforward for Pandas.
- Negative: PDFs and inconsistent CSV schemas force manual cleaning. No central schema registry means each project re-invents parsing logic.
Example: quick Python snippet to fetch a public CSV and inspect columns
import pandas as pd
url = 'https://www.digital.go.jp/assets/.../xxxxxx_hospital.csv'
df = pd.read_csv(url)
print(df.columns)
API quality: docs, specs, and operational behavior
- Catalog exists, but not every API publishes an OpenAPI/Swagger spec or machine-consumable schema.
- Questions to ask: authentication model, rate limits, pagination, error codes, CORS — these must be standardized so frontend and backend teams can build reliably.
Data quality and policy targets
- Policy documents often specify targets (e.g., open data coverage, API rollout), but dashboards linking targets to time-series data are rare.
- Practical check: if you want to track progress, you need time-stamped, versioned datasets with provenance fields (published_at, source_url, dataset_version).
Concrete engineering recommendations
- Publish OpenAPI specs for every API in the e-Gov catalog. This enables codegen, client SDKs, and tests.
- Adopt a minimal common schema set (JSON Schema + CSV dialect): date/time in ISO8601, prefixed geocoding fields (lat/lon), standard address components.
- Prefer JSON/CSV-first publishing. When PDFs are necessary, attach machine-readable artifacts (CSV/JSON) alongside.
- Run CI for data quality: validate new CSVs against schemas, check for null rates, enforce column names.
- Provide a schema registry and catalog with versioning + dataset provenance metadata (DCAT or schema.org Dataset).
Example OpenAPI fragment (conceptual)
openapi: 3.0.1
info:
title: Prefecture Hospital API
version: '1.0.0'
paths:
/hospitals:
get:
parameters:
- in: query
name: prefecture_code
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/HospitalList'
Use cases unlocked by improvements
- Real-time dashboards for disaster response using standardized location+capacity APIs.
- Faster civic apps: developers can scaffold frontends from OpenAPI clients instead of writing fragile scrapers.
- Better policymaking: link targets and actuals by ingesting time-series CSVs with clear provenance.
まとめ
Japan's public-data layer is promising: catalogs and CSVs exist, but we need engineering discipline to scale. Publish specs, standardize schemas, ensure machine-readability, and automate quality checks. 要するに、政策をコードで語れるようにするだけで、社会実装の速度と信頼性は格段に上がりますよ!
おかむーから一言
I've built startups and shipped gov-facing systems — tech fixes here are low-hanging fruit for huge impact. Let's make government data friendly to code and to people!
Sources
- https://www.e-gov.go.jp/digital-government/api
- https://www.soumu.go.jp/menu_seisaku/ictseisaku/ictriyou/opendata/opendata03.html
- https://japan-opendata.github.io/awesome-japan-opendata/
- https://www.jichi.ac.jp/
- https://api-catalog.e-gov.go.jp/info/ja/apicatalog/list
- https://www5.cao.go.jp/j-j/wp/wp-je24/csv/d1-1-4.csv
- https://www.jinji.go.jp/content/900024615.csv
- https://www.digital.go.jp/assets/contents/node/basic_page/field_ref_resources/0066e8a8-6734-44ab-a9a9-8e09ba9cb508/xxxxxx_hospital.csv
- https://www.env.go.jp/content/900398071.csv
- https://www.mofa.go.jp/mofaj/kids/ichiran/files/info.csv
- https://ja.wikipedia.org/wiki/%E5%85%AC%E5%85%B1
- https://www.intec.co.jp/column/smartcity-08.html
- https://kotobank.jp/word/%E5%85%AC%E5%85%B1-494676
- https://www.digital.go.jp/resources/data_case_study_private
- https://www.takeda.tv/saga/blog/post-230907/
Share
Related Reports

Code-driven Manifesto: Auditing Local Gov Data and Systems (Kagawa case study)
Local gov systems run but hide data behind UIs; expose CSV/JSON, APIs, and common schemas to unlock value.

Code-driven Check: Japan’s Open Data and the Machine-Readable Gap
Digital Japan has dashboards and rules, but PDFs and messy formats still block automated policy verification; mandate CSV/JSON, APIs, and dataset linting.

Code Speaks: Testing Japan's Gov Data and Dashboards
Japan has great dashboards but inconsistent machine-readability. This report inspects e-Stat, Japan Dashboard, Kantei PDFs, and proposes API-first fixes and practical code examples.