Search inbound train solutions for a selected outbound (SSE stream)

Initiate a reverse-direction (inbound / return) train search scoped to an already-selected outbound fare and stream normalised solutions back as Server-Sent Events, using the same projection as POST /v1/trains/search. The stream ends with event: done; an empty result set completes cleanly with zero event: solution frames. Re-selecting a different outbound runs a fresh search.

An empty result is not attributable — the stream does not report why it is empty. In particular it does not separate the two cases a client most needs to tell apart: no inbound trains exist for the reverse itinerary, versus inbound trains exist but none combines with the selected outbound fare. No discriminating signal survives from upstream, so offer both recoveries rather than guessing which one applies — run a fresh outbound search (POST /v1/trains/search) to try different return dates, or have the traveler choose a different outbound fare and call this endpoint again.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params

POST body for /v1/trains/inbound-search.

Reverse-direction (inbound / return) search scoped to an already-selected
outbound fare. The itinerary, trip type, and passengers are derived from
the selected outbound fare, so the request carries only the outbound
selection — the passenger/class/locale context flows from the request
headers and the outbound selection, not the body.

string
required
length ≥ 1

Mercury UUID for the selected outbound fare (the fareId field emitted by POST /v1/trains/fares). Used to scope the inbound (return) search to the chosen outbound.

Responses

401

Missing or invalid authentication

410

Outbound fare expired; refresh the fare search

422

Invalid search parameters

503

Train search provider unavailable

Language
Credentials
LoadingLoading…
Response
Click Try It! to start a request and see the response here!