POST search_trips
Trains, buses, flights and ferries between two places on a date, with times, duration, changes, operator and price.
read
Searches Omio for one route and date. Each result has an operator, departure and arrival, duration, number of changes and the lowest price, so your agent can rank by price or travel time. Pass the trip_id of a result to get_trip for its fares.
POST /api/v1/omio/search_trips
Input
| Parameter | Type | Description |
|---|---|---|
| from required | string | Departure city or station, e.g. "Amsterdam". |
| to required | string | Arrival city or station. |
| date required | date | Departure date. |
| return_date | date | Return date for a round trip. |
| passengers | object | Count per passenger type, as in the Omio search form, e.g. { "adult": 2 }. Default: 1 adult. |
| modes | string[] | Any of train, bus, flight, ferry. Default: all. |
| limit | integer | 1 to 50. Default: 20. |
Example response
{
"trips": [
{
"trip_id": "trp_7f3k29qa",
"mode": "train",
"operator": "Deutsche Bahn",
"departs": "2026-11-19T09:37:00+01:00",
"arrives": "2026-11-19T17:05:00+01:00",
"duration": "7h 28m",
"changes": 1,
"price": {
"amount": 89,
"currency": "EUR"
}
},
{
"trip_id": "trp_2c9d41bz",
"mode": "bus",
"operator": "FlixBus",
"departs": "2026-11-19T10:15:00+01:00",
"arrives": "2026-11-19T22:40:00+01:00",
"duration": "12h 25m",
"changes": 0,
"price": {
"amount": 54.99,
"currency": "EUR"
}
},
{
"trip_id": "trp_5a1h88mx",
"mode": "flight",
"operator": "Lufthansa",
"departs": "2026-11-19T11:20:00+01:00",
"arrives": "2026-11-19T12:45:00+01:00",
"duration": "1h 25m",
"changes": 0,
"price": {
"amount": 142,
"currency": "EUR"
}
}
]
}