DCX DCX Reliability Index
DC Metro · bus + rail · independent
Data API

DCX Data API

Programmatic access to the DCX reliability warehouse — scorecards, segment traversals, actual arrivals, prediction outcomes, and WMATA rail station headways. JSON and CSV.

Authentication

All requests require an API key passed as a Bearer token:

Authorization: Bearer <your-api-key>

Request access via the form at the bottom of this page.

Rate limits

1,000 requests per hour per key. Responses include no rate-limit headers; contact us if you need higher limits.

Base URL

https://dcx-api.0pon.com

Endpoints

GET /v1/scorecards

Route reliability scorecard aggregated over recent days.

ParamTypeDefaultDescription
route_idstringFilter to a single route
agency_idstringFilter by agency
daysint (1–90)7Lookback window in days
limitint (1–1000)100Max rows returned
formatcsv|jsonjsonResponse format
curl -H "Authorization: Bearer $KEY" \ "https://dcx-api.0pon.com/v1/scorecards?days=7&limit=50"

Returns an array of scorecard objects (JSON) or a CSV with a header row.

GET /v1/segments

Individual segment traversals from stop to next stop.

ParamTypeDefaultDescription
route_idstringFilter to a single route
agency_idstringFilter by agency
from_stop_seqintFilter by stop sequence
date_fromdate (YYYY-MM-DD)Start of date range
date_todate (YYYY-MM-DD)End of date range
limitint (1–1000)100Max rows returned
formatcsv|jsonjsonResponse format
curl -H "Authorization: Bearer $KEY" \ "https://dcx-api.0pon.com/v1/segments?route_id=70&date_from=2025-06-01&date_to=2025-06-07"

GET /v1/arrivals

Actual bus arrivals at stops.

ParamTypeDefaultDescription
route_idstringFilter to a single route
stop_idstringFilter to a single stop
date_fromdate (YYYY-MM-DD)Start of date range
date_todate (YYYY-MM-DD)End of date range
limitint (1–1000)100Max rows returned
formatcsv|jsonjsonResponse format
curl -H "Authorization: Bearer $KEY" \ "https://dcx-api.0pon.com/v1/arrivals?stop_id=1001533&date_from=2025-06-01"

GET /v1/predictions

WMATA Next Bus prediction outcome audit.

ParamTypeDefaultDescription
route_idstringFilter to a single route
horizon_binstringPrediction horizon bucket (e.g. "0-5min")
date_fromdate (YYYY-MM-DD)Start of date range
date_todate (YYYY-MM-DD)End of date range
limitint (1–1000)100Max rows returned
formatcsv|jsonjsonResponse format
curl -H "Authorization: Bearer $KEY" \ "https://dcx-api.0pon.com/v1/predictions?route_id=70&horizon_bin=0-5min"

GET /v1/rail/stations

WMATA rail station headway and dwell data.

ParamTypeDefaultDescription
route_idstringFilter to a single line
direction_idintFilter by direction (0 or 1)
daysint (1–90)7Lookback window in days
limitint (1–1000)100Max rows returned
formatcsv|jsonjsonResponse format
curl -H "Authorization: Bearer $KEY" \ "https://dcx-api.0pon.com/v1/rail/stations?route_id=RED&days=7"

Schema reference

scorecards

segments

arrivals

predictions

rail_stations

Request access

The API is in limited access. Tell us what you're building and we'll send you a key.

FAQ

Independent · derived from GTFS-Realtime & GBFS · not affiliated with WMATA or Capital Bikeshare.