pickthetrain

API for agents and developers

Everything on the site is also plain JSON, static and free to use under the ODbL with attribution ("Data: pickthetrain.com, from official open timetables"). No key, no rate limit beyond fair use.

EndpointReturns
/api/v1/cities.jsonEvery city: id, name, country, coordinates, its stations and airports (with typical access minutes)
/api/v1/routes.jsonEvery city pair with a direct cross-border train: trains a day, fastest minutes, families
/api/v1/from/{city}.jsonEvery direct destination from one city
/api/v1/routes/{from}/{to}.jsonEvery direct train in one direction: departure/arrival (local minutes after midnight), duration, family, train, operator + official site, stations, days it runs, and the door-to-door comparison
/api/v1/meta.jsonBuild date and the timetable window the times cover

City ids are lowercase slugs, e.g. zurich, st-gallen, frankfurt-oder. Example: /api/v1/routes/zurich/milan.json. Human pages: /trains/{from}-to-{to}/ and /from/{city}/. See also llms.txt and intents.md.