API Яндекс Расписаний API

Отрасль: Путешествия и транспорт. Актуально на 2026-10-24.

API Яндекс Расписаний отдаёт расписания самолётов, поездов, электричек, автобусов, водного транспорта и вертолётов: рейсы между станциями, расписание по станции, станции следования нитки, ближайшие станции и город, данные перевозчика и полный список станций. Ответы — JSON (по умолчанию) или XML.

Сценарии

Найти рейсы между городами на дату

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

  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

Расписание электричек по станции

Табло отправлений: какие электрички уходят со станции и в каком направлении.

  1. Узнай код станции (начинается с s) из GET /v3.0/stations_list/ или GET /v3.0/nearest_stations/. Список всех станций весит около 40 МБ — скачай его один раз и храни у себя.
  2. Запроси расписание: GET /v3.0/schedule/ с station, transport_types = suburban и при необходимости direction — направлением, например «на Москву». direction работает только для электричек.
  3. По умолчанию возвращаются отправления; для прибытий передай event = arrival. Без date — расписание на все дни.
  4. Чтобы показать время в часовом поясе пользователя, передай result_timezone.
curl -G https://api.rasp.yandex.net/v3.0/schedule/ \
  -d apikey=<ключ> -d station=s9600213 -d transport_types=suburban \
  --data-urlencode 'direction=на Москву' -d date=2026-11-03

Ближайшие станции и город по координатам пользователя

Подсказать, откуда ближе уехать: станции рядом с пользователем и ближайший город.

  1. Запроси станции: GET /v3.0/nearest_stations/ с lat, lng (WGS84) и distance — радиусом в километрах. Отфильтровать можно по station_types и transport_types.
  2. Для определения города вызови GET /v3.0/nearest_settlement/ с теми же координатами (радиус по умолчанию 10 км, максимум 50).
  3. Код найденного города или станции подставляй в from для поиска рейсов.
curl -G https://api.rasp.yandex.net/v3.0/nearest_stations/ \
  -d apikey=<ключ> -d lat=55.7558 -d lng=37.6173 -d distance=3 -d transport_types=suburban

curl -G https://api.rasp.yandex.net/v3.0/nearest_settlement/ \
  -d apikey=<ключ> -d lat=55.7558 -d lng=37.6173

Показать остановки поезда или рейса

Список станций следования конкретного поезда с временем прибытия и стоянками.

  1. Получи uid нитки из ответа GET /v3.0/search/ или GET /v3.0/schedule/ (поле thread.uid). uid может меняться — бери свежий перед каждым запросом.
  2. Запроси станции следования: GET /v3.0/thread/ с uid и date. Чтобы показать только отрезок маршрута пассажира, передай from и to.
  3. Если нужен перевозчик, получи его данные: GET /v3.0/carrier/ с code из thread.carrier.
curl -G https://api.rasp.yandex.net/v3.0/thread/ \
  -d apikey=<ключ> -d uid=<uid нитки> -d date=2026-11-03 -d lang=ru_RU

Базовые 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/schedule/ — Расписание рейсов по станции

Параметр Где Тип Обяз. Описание
apikey query string да Ключ
station query string да Код станции в системе из system
lang query string нет Язык, по умолчанию ru_RU
format query string нет json или xml
date query string нет Дата ISO 8601
transport_types query string нет Тип транспорта
direction query string нет Направление для электричек; только при transport_types=suburban
event query string нет departure (по умолчанию) или arrival
system query string нет yandex, iata, sirena, express, esr
show_systems query string нет yandex, esr или all
result_timezone query string нет Часовой пояс ответа

Пример запроса:

https://api.rasp.yandex-net.ru/v3.0/schedule/?apikey={ключ}&station=s9600213&transport_types=suburban&direction=на%20Москву

GET /v3.0/thread/ — Список станций следования

Параметр Где Тип Обяз. Описание
apikey query string да Ключ
uid query string да Идентификатор нитки; может меняться — получайте перед каждым запросом
from query string нет Код станции отправления
to query string нет Код станции прибытия
format query string нет json или xml
lang query string нет Язык
date query string нет Дата; по умолчанию первая дата хождения нитки
show_systems query string нет yandex, esr или all

GET /v3.0/nearest_stations/ — Список ближайших станций

Параметр Где Тип Обяз. Описание
apikey query string да Ключ
lat query number да Широта WGS84
lng query number да Долгота WGS84
distance query number да Радиус поиска, км
lang query string нет Язык
format query string нет json или xml
station_types query string нет Типы станций через запятую
transport_types query string нет Типы транспорта через запятую
offset query integer нет Смещение
limit query integer нет Максимум результатов, по умолчанию 100

GET /v3.0/nearest_settlement/ — Ближайший город

Параметр Где Тип Обяз. Описание
apikey query string да Ключ
lat query number да Широта WGS84
lng query number да Долгота WGS84
distance query number нет Радиус поиска, км: по умолчанию 10, максимум 50
lang query string нет Язык
format query string нет json или xml

GET /v3.0/carrier/ — Информация о перевозчике

Параметр Где Тип Обяз. Описание
apikey query string да Ключ
code query string да Код перевозчика; для IATA в ответе может быть несколько перевозчиков
system query string нет yandex (по умолчанию), iata, sirena, express, esr
lang query string нет Язык
format query string нет json или xml

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

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

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

Нюансы

Ошибки

Код Описание
200 Запрос выполнен успешно
400 Запрос невалидный: не указаны обязательные параметры
404 Объект с указанным кодом не найден

Источники


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