--- title: "Jakarta Public Transport Data" description: "Umbrella topic for Jakarta-area public transport data — how each operator's realtime/schedule systems actually work, what is publicly reachable, and what is usable for future projects. Subtopics: TransJakarta live bus feed; KRL/Comuline schedules." status: active category: technical tags: [jakarta-public-transport-data, transit-data, jakarta, jabodetabek, transjakarta, krl, commuter-line, open-data, reverse-engineering] draft: true created: 2026-10-12 updated: 2026-10-12 --- # Jakarta Public Transport Data ## Summary Umbrella topic for **Jakarta-area public transport data**: what data each operator exposes, how third-party apps actually get it, and what is usable for future projects. Each system lives in a subtopic below; the shared thread is reverse-engineering public transport data pipelines and documenting them for reuse. ## Subtopic Map - [[transjakarta-live-data/index|TransJakarta Live Data]] — bus lens: anonymous MQTT fleet stream + guest REST API + official GTFS; verified via cross-capture (audited Oct 2026) - [[comuline-krl-data/index|Comuline / KRL Schedule Data]] — rail lens: KRL Commuter Line schedules replicated from KAI Commuter's official partner API; currently a frozen snapshot (audited Oct 2026) ## Research Question Which Jakarta public transport data sources are publicly reachable today, how do they work end-to-end, and which are stable enough to build on? ## Key Findings - **TransJakarta buses: live and open (as of Oct 2026).** Anonymous MQTT broker (`wss://mqtt.tj.co.id:8084/mqtt`) + guest-token REST API + official GTFS give the full realtime fleet (~3.3–3.7k buses). Usable today. - **KRL commuter line: schedules only, and stale.** Comuline replicates KAI Commuter's partner API, but its sync stopped ~Mar 2025; its public API still serves that snapshot. No live train positions there. - **Pattern across both:** operators rarely publish developer-facing APIs; practical access comes from app backends, partner endpoints, and open replication projects that document the pipelines. Access is undocumented and can change without notice. ## Related Research - [[transjakarta-live-data/index|TransJakarta Live Data]] — first audit (origin of this umbrella) - [[comuline-krl-data/index|Comuline / KRL Schedule Data]] — second audit ## Discussion Branched 2026-10-12 per user request after two audits: TransJakarta (via `transit.oyenza.com`) and KRL schedules (via `comuline.com`). Both were already documented as separate topics; this umbrella gathers them under one home and is the place to add future systems (MRT Jakarta, LRT Jabodebek, TransJabodetabek, etc.). ## Next Steps - [ ] Add subtopics for other Jabodetabek systems as they get audited (MRT Jakarta, LRT Jakarta/Jabodebek, TransJabodetabek) - [ ] Re-verify access status of both existing feeds periodically (undocumented; can change) - [ ] Keep per-system "verified on" dates current in subtopics