FlixBus Scraper — Bus & Train Schedules, Fares (40+ Countries)
Pricing
Pay per event
FlixBus Scraper — Bus & Train Schedules, Fares (40+ Countries)
Scrape FlixBus group schedules, fares, and availability across 40+ countries. Returns departure/arrival times, duration, transfers, price, seat availability, Wi-Fi/power/bike/wheelchair info. For travel aggregators, fare comparison tools, and mobility planners.
Pricing
Pay per event
Rating
0.0
(0)
Developer
BowTiedRaccoon
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
9 hours ago
Last modified
Categories
Share
FlixBus Scraper — Bus & Train Schedules, Fares, Routes
Scrapes trip schedules, fares, and seat availability from FlixBus across 40+ countries. Returns departure and arrival times, duration, price, amenities, accessibility info, and a direct booking link — for any origin/destination pair on any date.
FlixBus Scraper Features
- Extracts up to 100 trips per route/date query in a single run
- Returns 20+ fields per trip: timing, price, seat count, bike slots, Wi-Fi, power, wheelchair status
- Covers FlixBus and FlixTrain routes across Europe, the US, and Canada
- Accepts city names in plain language — "New York", "Berlin", "Paris" — no ID lookups required
- Supports 12 currencies: EUR, USD, GBP, CHF, PLN, CZK, SEK, DKK, NOK, TRY, HUF, RON
- Pure API scraping, no browser required
- Accepts ISO dates (YYYY-MM-DD) or defaults to tomorrow if no date is provided
Who Uses FlixBus Data?
- Travel aggregators — Pull real-time fares and schedules to display alongside rail and flight options
- Fare comparison tools — Track price changes over time for a given corridor or compare FlixBus against competing intercity carriers
- Mobility researchers — Analyze intercity bus coverage, route frequency, and pricing across European markets
- Tourism apps — Surface affordable ground transport options for budget travelers
- Data journalists — Map FlixBus accessibility by route — wheelchair status, bike capacity — the kind of analysis that takes ten minutes with structured data and forever without it
How FlixBus Scraper Works
- Fetches the FlixBus partner auth key from a public server config endpoint — no scraping the frontend, no WAF to navigate.
- Resolves your city names to FlixBus internal UUIDs via the autocomplete API. You type "Berlin"; it figures out the rest.
- Issues a single search request to the v4/search endpoint. All results for a given route and date come back in one response — no pagination needed.
- Saves each available trip as a structured record with fare, timing, amenity, and booking link data.
Input
{"origin": "Berlin","destination": "Prague","date": "2026-06-15","passengers": 1,"currency": "EUR","maxItems": 15,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
| Field | Type | Default | Description |
|---|---|---|---|
origin | string | Berlin | Departure city name (e.g. "New York", "Paris", "Warsaw") |
destination | string | Prague | Arrival city name |
date | string | tomorrow | Travel date in YYYY-MM-DD format. Leave blank to use tomorrow. |
passengers | integer | 1 | Number of adult passengers |
currency | string | EUR | Price currency ISO code (EUR, USD, GBP, etc.) |
maxItems | integer | 15 | Maximum number of trip results to return |
proxyConfiguration | object | RESIDENTIAL | Proxy settings. Residential proxy recommended for accurate geo-routing. |
FlixBus Scraper Output Fields
{"trip_id": "direct:1234567:40d8f682-8646-11e6-9066-549f350fcb0c:40de1ad1-8646-11e6-9066-549f350fcb0c","service": "FlixBus","route_id": "N60","origin_city": "Berlin","origin_station": null,"origin_country": "DE","destination_city": "Prague","destination_station": null,"destination_country": "CZ","departure_time": "2026-06-15T00:15:00+02:00","arrival_time": "2026-06-15T04:40:00+02:00","duration_minutes": 265,"transfers": 0,"segments": [],"price_total": 18.99,"price_currency": "EUR","price_type": "Direct","seats_available": 62,"bike_slots_available": 0,"amenities": ["wifi", "power"],"bikes_allowed": "true","wheelchair_status": "unknown","booking_url": "https://shop.flixbus.com/search?departureCity=40d8f682-8646-11e6-9066-549f350fcb0c&arrivalCity=40de1ad1-8646-11e6-9066-549f350fcb0c&rideDate=06/15/2026&adult=1","scraped_at": "2026-06-14T18:30:00.000Z"}
| Field | Type | Description |
|---|---|---|
trip_id | string | FlixBus trip UID encoding ride ID and station IDs |
service | string | Brand name: FlixBus or FlixTrain |
route_id | string | Route line code (e.g. N60, F303) |
origin_city | string | Departure city name as returned by FlixBus |
origin_station | string | Departure station name (null in v4 search results) |
origin_country | string | ISO country code for origin (DE, US, FR, etc.) |
destination_city | string | Arrival city name |
destination_station | string | Arrival station name (null in v4 search results) |
destination_country | string | ISO country code for destination |
departure_time | string | Scheduled departure — ISO 8601 with timezone offset |
arrival_time | string | Scheduled arrival — ISO 8601 with timezone offset |
duration_minutes | number | Total trip duration in minutes |
transfers | number | Number of transfers (0 = direct service) |
segments | array | Stop names along route |
price_total | number | Total ticket price in the requested currency |
price_currency | string | Currency ISO code |
price_type | string | Trip type: Direct or Transfer |
seats_available | number | Seats available at scrape time |
bike_slots_available | number | Bike transport slots available |
amenities | array | On-board amenities (wifi, power, toilet, ac, reclining_seats, extra_legroom) |
bikes_allowed | string | Whether bicycle carriage is permitted ("true" / "false") |
wheelchair_status | string | Wheelchair accessibility status as reported by FlixBus |
booking_url | string | Direct booking link on shop.flixbus.com |
scraped_at | string | ISO timestamp when data was scraped |
🔍 FAQ
How do I scrape FlixBus schedules for a specific route?
FlixBus Scraper takes an origin city name, a destination city name, and a date. Set origin to your departure city (e.g. "Amsterdam"), destination to your arrival city (e.g. "Brussels"), and date to your travel date in YYYY-MM-DD format. Leave date blank to get tomorrow's trips, which works well for monitoring.
How much does FlixBus Scraper cost to run?
FlixBus Scraper charges $0.10 per start plus $0.001 per record. A run returning 15 trips costs roughly $0.115. Most routes have 50–100 available trips per date, so a full-route pull of 100 records runs about $0.20.
What data can I get from FlixBus?
FlixBus Scraper returns schedules, fares, seat availability, bike slot counts, amenities (Wi-Fi, power sockets, toilets, AC), wheelchair accessibility status, and direct booking URLs. Coverage spans 40+ countries and 5,600+ destinations. Prices and seat counts reflect availability at the moment of scraping.
Can I filter results by price or departure time?
FlixBus Scraper returns all available trips for a route and date, up to maxItems. Filtering happens in your downstream pipeline — take the full output and apply your own criteria.
Does FlixBus Scraper need proxies?
Residential proxy is recommended. The FlixBus API applies geo-routing for country-specific pricing, so a proxy matching the origin country gives more accurate fares. It also reduces rate limiting risk on high-volume runs.
What cities are supported?
FlixBus serves 5,600+ destinations across 40+ countries in Europe, the US, and Canada. If it's on the FlixBus website, FlixBus Scraper can reach it. Unrecognized city names return a descriptive error.
Need More Features?
Need round-trip queries, custom fields, or a different target site? File an issue or reach out through the Apify console.
Why Use FlixBus Scraper?
- Affordable — $0.001 per record includes pricing, availability, and amenities in a single API call
- Clean output — Returns structured JSON with consistent field names and ISO-format timestamps, so your pipeline can use the data without normalization
- 40+ countries — One actor covers all FlixBus and FlixTrain markets, from Germany and France to the US east coast intercity network