---
title: "Get available train trips"
method: GET
path: "/trips"
tags: ["Trips"]
---

# Get available train trips

`GET /trips`

Returns a list of available train trips between the specified origin and destination stations on the given date, and allows for filtering by bicycle and dog allowances.

## Query parameters

- `page` integer
- `limit` integer
- `origin` string, uuid, required
- `destination` string, uuid, required
- `date` string, date-time, required
- `bicycles` boolean
- `dogs` boolean

## Response `200`

A list of available train trips

- object — This is a generic request/response wrapper which contains both data and links which serve as hypermedia controls (HATEOAS).
  - `data` object[] — The wrapper for a collection is an array of objects.
    - `id` string, uuid — Unique identifier for the trip
    - `origin` string — The starting station of the trip
    - `destination` string — The destination station of the trip
    - `departure_time` string, date-time — The date and time when the trip departs
    - `arrival_time` string, date-time — The date and time when the trip arrives
    - `operator` string — The name of the operator of the trip
    - `price` number — The cost of the trip
    - `bicycles_allowed` boolean — Indicates whether bicycles are allowed on the trip
    - `dogs_allowed` boolean — Indicates whether dogs are allowed on the trip
    - `self` string, uri
  - `links` object — Links to the next and previous pages of a paginated response.
    - `self` string, uri
    - `next` string, uri
    - `prev` string, uri

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `429` — Too Many Requests
- `500` — Internal Server Error

## Changes

- **2025-03-12** `f98baa492089` — 4 info
  - added `subschema #2, subschema #3` to the response body `allOf` list for the response status `200` (media type: application/json)
  - added `subschema #2, subschema #3` to the response body `allOf` list for the response status `200` (media type: application/xml)
  - removed `subschema #2, subschema #3` from the response body `allOf` list for the response status `200` (media type: application/json)
  - removed `subschema #2, subschema #3` from the response body `allOf` list for the response status `200` (media type: application/xml)
- **2024-12-10** `ef0c8f8dd26d` — 1 breaking, 9 warning, 1 info
  - the `allOf[subschema #2]/data/items/` response's property type/format changed from `object`/`` to ``/`` for status `200`
  - removed the optional property `allOf[subschema #2]/data/items/arrival_time` from the response with the `200` status
  - removed the optional property `allOf[subschema #2]/data/items/bicycles_allowed` from the response with the `200` status
  - removed the optional property `allOf[subschema #2]/data/items/departure_time` from the response with the `200` status
  - …7 more
- **2024-11-05** `954726dfc1b1` — 1 breaking, 1 warning, 1 info
  - for the `query` request parameter `page`, the type/format was changed from `number`/`` to `integer`/``
  - for the `query` request parameter `page`, the min was set to `1.00`
  - added the new optional `query` request parameter `limit`
- …earlier changes not shown

[Full history](https://skmtc.dev/bump-sh-examples/apis/train-travel-api/changes/trips/get.md)

---

[API](https://skmtc.dev/bump-sh-examples/apis/train-travel-api.md) · [All operations](https://skmtc.dev/bump-sh-examples/apis/train-travel-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/bump-sh-examples/train-travel-api/revisions/f98baa492089/schema)
