Code-speaking Manifesto: How Japan’s Public Data Stacks Up Technically

どうも〜おかむーです! Today I want to look at how Japanese central and local government data and systems behave when you treat policy as code. エンジニア的に言うと、政策はデータとAPIで表現されるべきなんですよ。
- Governments publish lots of PDFs and policy goals, but machine-readable time series are scarce
- e-Gov and Tokyo provide APIs, but coverage and formats are inconsistent
- Technical fixes (CSV/JSON, schema, monitoring) could unlock reuse and auditability
Conclusion
Overall: there's clear momentum—Digital Agency, e-Gov APIs, Tokyo Open Data—but too much policy evidence remains buried in PDFs and ad-hoc reports. 要するに、公開はしてるけどエンジニアフレンドリーじゃないんです。API-first, schema-firstで整備すれば、KPIの追跡や市民監査が一気に楽になる。
Report: what's actually out there
What I checked
- Digital Agency pages and meeting materials about machine-readability rules (digital.go.jp, cas.go.jp)
- e-Gov API portal and catalog (e-gov.go.jp / api-catalog.e-gov.go.jp)
- Tokyo Open Data API portal (portal.data.metro.tokyo.lg.jp)
- Example local implementation: Yamaguchi prefecture PDF on "Digital Countryside" fund
これ見てくださいよ:中央はAPIカタログを公開しているけど、地方はPDFで実績を配るパターンが多い。PDFは人間には読めるけど、コードには扱いにくいんですよね。
Machine-readability: state of play
- Positive: national-level APIs exist and the government is publishing rules to ensure machine-readability for administrative data
- Negative: many KPI reports and grant performance summaries are PDFs (see Yamaguchi's project report), lacking CSV/JSON time series
- Coverage gaps: no single canonical schema for KPI events across ministries; formats vary (CSV, Excel, PDF tables)
Technical examples and quick wins
- API discovery: use e-Gov API catalog to find endpoints, then normalize responses with a small script
# normalize JSON/CSV responses into a Pandas dataframe
import requests, pandas as pd
r = requests.get('https://api-catalog.e-gov.go.jp/your-endpoint')
data = r.json()
df = pd.json_normalize(data['items'])
- PDF → structured CSV: use tabula-py or camelot to extract tables from PDFs when CSV absent
# example: extract tables from a PDF (requires Java)
tabula -o output.csv -p all input.pdf
- Define a minimal KPI JSON Schema and publish it alongside datasets so downstream apps can validate automatically. Example fields: period, region_code, measure_id, target, actual, source_url.
Policy vs. practice: KPI gaps
Guidelines for the Digital Countryside fund require setting KPIs and annual improvement (chisou.go.jp guidance), but local reports often show aggregate amounts in PDFs without machine-readable time series. That makes tracking progress programmaticly hard—you can't easily compute year-on-year achievement rates or feed dashboards.
Concrete technical proposals
Summary of benefits
- Faster civic analysis and independent audits
- Reproducible dashboards for policymakers and citizens
- Reduced manual rework for local governments (once pipelines exist)
まとめ
中央の仕組みはできつつあるけど、現場のデータがPDFに埋もれているのが現状。API-first、スキーマ公開、PDF→CSV自動化があれば、政策の実効性はぐっと検証しやすくなる。エンジニアの視点で言うと、これは全部"engineering problem"なんですよね。
おかむーから一言
I’ve built products that take messy government data and make useful services—so信じてほしいんです、技術で改善できる部分は山ほどあります!Let's ship APIs, not PDFs.
Sources
- https://ja.wikipedia.org/wiki/%E3%83%87%E3%82%B8%E3%82%BF%E3%83%AB
- https://www.chisou.go.jp/sousei/pdf/r5_guideline-checkaction.pdf
- https://www.digital.go.jp/
- https://www.pref.yamaguchi.lg.jp/uploaded/attachment/160746.pdf
- https://kotobank.jp/word/%E3%81%A7%E3%81%98%E3%81%9F%E3%82%8B-3199189
- https://www.e-gov.go.jp/digital-government/api
- https://portal.data.metro.tokyo.lg.jp/opendata-api/
- https://www.jichi.ac.jp/
- https://api-catalog.e-gov.go.jp/info/ja/apicatalog/list
- https://www.jichi.ac.jp/web_text/
- https://www.zhihu.com/question/290714454
- https://www.cas.go.jp/jp/seisaku/digital_gyozaikaikaku/kakusyoDX4/kakusyoDX4.html
- https://www.zhihu.com/question/6430289390
- https://www.digital.go.jp/assets/contents/node/basic_page/field_ref_resources/256dcba6-b936-4031-b88d-3abb27e27f9b/7c809f2f/20260331_meeting_executive_outline_05.pdf
- https://www.zhihu.com/question/2031197523432453026
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.