{"ok": true, "generated_at": "2026-10-08T20:37:05+00:00", "sources": {"bahrainbus": {"fetched_at": "2026-10-08T20:20:09+00:00", "site": "https://www.bahrainbus.bh", "timetables": "https://journey.bahrainbus.bh/timetable", "sampled_week_start": "2026-10-09", "timetable_groups": ["10-11", "12-X12", "13", "14", "15-16", "17-18", "19", "20-20A-20B", "22-X22", "23-23S", "3-13-X3", "31", "41-42", "43", "44-45", "A1", "A2-U2-X2", "B1", "E1", "E2", "U5-X5-X5A", "X4", "X6-X6A"], "maps": ["1AqMEeEqsZJaqv6qfTZ_lNGp_WVkl_Nq1", "1BTqggG09QzLoVYgmfdtJx9zeviM2M1ny", "1Bj0o7VvWE-Aiwi7knDz3laH5wUg9EUO-", "1E5OzBt4HYbdPBHymkuuGqAF7hmRvjjQ", "1L_KgGmfyygZurNpqfndl5cUOiWblIgpK", "1MERtrdsRWolN_NYXPriRxVaBaxNqlmk", "1Nj0AtRoPaNjwMSTxMy_orv6z7rQxk_6I", "1TqJdpAdHdDicomZmjw7rNUfwpU6ixPs", "1UoCqI76OS4mklhHJnN6k213CQ56au-E", "1V-VJwLKopjS97OeazqRi9Qsh2U2CmltH", "1VKhpC1c8Z8W31tvClPBrgn06POe-H2mD", "1XpidKo_mQK5LtiaV96wtu0xzzCbAw2la", "1YuI4MOgulXxAGHjjsG_Ro1DOzFPvkPEg", "1Z-0u_AYxbkq3gr0T_jVf-a8hPseG2q9i", "1afrAJRJRb3psqMrqwHylkOekVYuZ-qI", "1c2GrHOTBSZtv3AYThEHbnXWICQrt6WNj", "1cKrvuNni9UKg4VgFGEvo230g6acW3wxp", "1eHcbbM3ImSH8t-B9Tt9RKpwWBQRxxmw", "1em6Bzizi9qSU2-5YTR-b91ueYK5QcSM", "1jD5aK79fEMSZ4WHM1NEI10wV8Uhu1bk", "1l0oOsZM37wgMJE7_8ht0LJOpUBx3RcoO", "1nPhlrlnftSVMd_FkaKsb42GWlCmFHZNA", "1ohthdEXKr6yrtih5ImKBvZfDs01dMGgv", "1p78gijEbKMmXnr3Y7GXgGvOXMfS-6jcn", "1wdt6YUtnrh6rZZamA8YVEK4ahANq0FY"]}, "osrm": {"url": "https://router.project-osrm.org/route/v1/driving/"}}, "counts": {"lines": 39, "directions": 111, "stations": 703, "approximate_stations": 1, "trips": 6236, "bahrain": {"lines": 39, "stations": 703}}, "warnings": ["224R03N6: the maps place it up to 212 m apart; kept the position nearest its neighbours", "236H30N1: the maps place it up to 213 m apart; kept the position nearest its neighbours", "553H85S1: the maps place it up to 108 m apart; kept the position nearest its neighbours", "551H55E2: the maps place it up to 279 m apart; kept the position nearest its neighbours", "756H71W1: the maps place it up to 162 m apart; kept the position nearest its neighbours", "752H71E1: the maps place it up to 253 m apart; kept the position nearest its neighbours", "428R19N2: the maps place it up to 79 m apart; kept the position nearest its neighbours", "604H31E1: the maps place it up to 317 m apart; kept the position nearest its neighbours", "stop 575A79N1 (Avenue 79-4/Janabiyah) is on no map; placed between its neighbours by the timetable (add it to curation/stops.json)"], "load_seconds": 0.2, "attribution": ["Bus lines, stops, stop names (English and Arabic) and timetables: Bahrain Public Transport Company (Bahrain Bus), www.bahrainbus.bh and its timetable service journey.bahrainbus.bh", "Stop positions and route shapes: the official Bahrain Bus route maps (Google My Maps) linked from www.bahrainbus.bh", "Road shapes where the maps have gaps: OSRM (project-osrm.org) on OpenStreetMap data, © OpenStreetMap contributors, ODbL"], "python": "3.12.14"}