API Яндекс Расписаний: Найти рейсы между городами на дату

Сценарий из mcp-everything. Актуально на 2026-10-24.

Показать поезда, самолёты или автобусы из одного города в другой — со временем отправления, прибытия и ценами, если они есть.

  1. Получи ключ в Кабинете разработчика (продукт «API Яндекс.Расписаний») — он работает сразу. Передавай его в параметре apikey.
  2. Найди коды пунктов: код города начинается с c (например, c213 — Москва), код станции — с s. Коды можно взять из GET /v3.0/stations_list/ или из ответов других методов.
  3. Запроси рейсы: GET /v3.0/search/ с from, to и date (YYYY-MM-DD). Тип транспорта ограничивает transport_types: plane, train, suburban, bus, water, helicopter.
  4. В ответе segments — рейсы с departure, arrival, duration, thread (номер, перевозчик, uid нитки) и tickets_info. Для маршрутов с пересадками добавь transfers = true.
  5. Без date вернутся только прямые рейсы на все даты. Листай результаты через offset и limit (по умолчанию 100).
curl -G https://api.rasp.yandex.net/v3.0/search/ \
  -d apikey=<ключ> -d format=json -d lang=ru_RU \
  -d from=c213 -d to=c2 -d date=2026-11-03 \
  -d transport_types=train

Базовые URL

Авторизация

Тип: API-ключ

Ключ получают в Кабинете разработчика, подключив продукт «API Яндекс.Расписаний»; работает сразу после создания. Ключ передаётся в каждом запросе в параметре apikey или в заголовке Authorization. Если передать оба, приоритет у apikey.

https://api.rasp.yandex-net.ru/v3.0/search/?apikey={ключ}&format=json&from=c146&to=c213&lang=ru_RU&page=1&date=2015-09-02

Методы сценария

GET /v3.0/search/ — Расписание рейсов между станциями

Ответ содержит pagination, segments (рейсы: from, to, departure, arrival, duration, thread, tickets_info), interval_segments и search.

Параметр Где Тип Обяз. Описание
apikey query string да Ключ (можно передать в заголовке Authorization)
from query string да Код станции отправления; можно код населённого пункта с префиксом c
to query string да Код станции прибытия
format query string нет json (по умолчанию) или xml
lang query string нет Язык ответа, по умолчанию ru_RU
date query string нет Дата ISO 8601 (YYYY-MM-DD); без даты — только прямые рейсы на все даты
transport_types query string нет plane, train, suburban, bus, water, helicopter
system query string нет Система кодирования from и to, по умолчанию yandex
show_systems query string нет Добавить коды станций в системе yandex или esr
offset query integer нет Смещение, по умолчанию 0
limit query integer нет Максимум результатов, по умолчанию 100
add_days_mask query boolean нет Вернуть календарь хождения (schedule) для каждой нитки
result_timezone query string нет Часовой пояс дат в ответе (идентификатор базы tz)
transfers query boolean нет Добавить маршруты с пересадками, по умолчанию false

GET /v3.0/stations_list/ — Список всех доступных станций

Вложенная структура: страны → регионы → населённые пункты → станции. Ответ — около 40 МБ.

Параметр Где Тип Обяз. Описание
apikey query string да Ключ
lang query string нет Язык
format query string нет json или xml

Нюансы

Другие сценарии


Если этого недостаточно — официальная документация: https://yandex.ru/dev/rasp/doc/ru/ Вся интеграция одним документом: https://mcp-everything.ru/integrations/yandex-rasp.md