---
title: "POST /journey-search-pagination"
method: POST
path: "/journey-search-pagination"
tags: ["Journey Search"]
---

# POST /journey-search-pagination

`POST /journey-search-pagination`

Returns a Journey Search result

## Request body

- object
  - `searchId` string, required
  - `temporalDirection` 'next' | 'previous', required
  - `transitDefinitionDirection` 'outward' | 'inward', required
  - `originalSearchParams` object
    - `maximumJourneys` integer
    - `type` 'single' | 'return' | 'openReturn', required
    - `passengers` object[]
      - `dateOfBirth` string
      - `age` union
        - unknown
        - string
      - `gender` 'male' | 'female'
      - `ageMin` union
        - unknown
        - number
      - `ageMax` union
        - unknown
        - number
    - `cards` object[]
      - `cardTypeId` string, required
    - `transitDefinitions` object[], required
      - `origin` string, uuid, required
      - `destination` string, uuid, required
      - `journeyDate` object, required — The Journey Date
        - `type` 'departAfter' | 'arriveBefore', required
        - `time` string, required
      - `direction` 'outward' | 'inward', required
      - `via` object[]
        - `location` string, required
        - `type` 'pass' | 'stop' | 'change'
      - `avoid` object[]
        - `location` string, required
        - `type` 'pass' | 'change'
    - `includeRealtime` boolean
    - `composition` string[]
    - `isEurope` boolean
    - `dpiCookieId` string
    - `filterByConnection` string

## Response `200`

Returns a successful Journey Search result

- object
  - `data` object, required
    - `brands` object — A dictionary of brands.
    - `carriers` object, required — A dictionary of carriers.
    - `discountCards` object, required — A dictionary of discount cards.
    - `disruptions` object
    - `fareTypes` object, required
    - `journeySearch` object, required
      - `id` string, required
      - `journeys` object, required
      - `alternatives` object, required
      - `fares` object, required
      - `responseCards` object, required
      - `legs` object, required
      - `sections` object, required
      - `deliveryOptions` object, required
      - `passengers` object, required
      - `createdAt` string, date-time, required
      - `expiresAt` string, date-time
      - `pagination` object, required
        - `next` object, required
          - `outward` boolean, required
          - `inward` boolean, required
        - `previous` object, required
          - `outward` boolean, required
          - `inward` boolean, required
      - `warnings` object[]
        - `code` string
        - `severity` 'correctable' | 'intermittent' | 'unrecoverable' | 'unexpected'
        - `detail` string
        - `target` object[]
          - `id` string
          - `type` string
      - `inwardSearch` boolean
      - `transportModes` string[]
      - `travelPolicyResults` object
      - `sponsoredSearchExperiment` string, nullable — opti-XXXX experiment id from Sponsored Search API headers
    - `routeRestrictions` object
    - `fareRestrictions` object
    - `travelClasses` object
    - `locations` object, required — A dictionary of locations.
    - `passengerTypes` object — A dictionary of passengerTypes.
    - `fareCategories` object
    - `transportModes` object
    - `appliedDiscounts` object
    - `travelPolicyResutls` object

## Other responses

- `400` — Validation Error
- `500` — General server Error

---

[API](https://skmtc.net/thetrainline/apis/trainline-desktop-api.md) · [All operations](https://skmtc.net/thetrainline/apis/trainline-desktop-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/thetrainline/trainline-desktop-api/revisions/45a894ec56f4/schema)
