Aviasales Data API (Travelpayouts): Показать дешёвые билеты по направлению

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

Блок «Билеты Москва — Сочи от …» на странице направления или в статье: самые дешёвые варианты на нужный месяц.

  1. Возьми API-токен в профиле Travelpayouts и передавай его в заголовке X-Access-Token (или параметром token).
  2. Запроси билеты: GET /aviasales/v3/prices_for_dates с origin и destination (IATA-коды), departure_at (YYYY-MM или YYYY-MM-DD), для туда-обратно — return_at и one_way = false. Только прямые — direct = true.
  3. В data[] для каждого билета: price, airline, flight_number, departure_at, return_at, transfers, duration и link — путь к билету на Aviasales, его дополняют до полного адреса сайта.
  4. Цены берутся из кэша поисков пользователей за последние 48 часов: показывай их как «цены от», а не как гарантированные, и обновляй блок регулярно.
  5. Проверяй success в ответе: при ошибке data пустой, а текст — в error.
curl -G "https://api.travelpayouts.com/aviasales/v3/prices_for_dates" \
  -H "X-Access-Token: $TP_TOKEN" -H 'Accept-Encoding: gzip, deflate' --compressed \
  -d origin=MOW -d destination=AER -d departure_at=2026-12 \
  -d one_way=true -d direct=false -d sorting=price -d currency=rub -d limit=10

Базовые URL

Авторизация

Тип: API-ключ

API-токен из профиля Travelpayouts (раздел «API-токен») передаётся в заголовке X-Access-Token или в параметре token.

https://api.travelpayouts.com/aviasales/v3/prices_for_dates?origin=MAD&destination=BCN&departure_at=2023-07&return_at=2023-08&unique=false&sorting=price&direct=false&cy=usd&limit=30&page=1&one_way=true&token=PutYourTokenHere

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

GET /aviasales/v3/prices_for_dates — Билеты на конкретные даты

Самые дешёвые билеты на даты, найденные за последние 48 часов. Заменяет /v1/city-directions, /v1/prices/cheap, /v1/prices/direct, /v2/prices/latest.

В ответе для каждого билета: origin, destination, price, airline, flight_number, departure_at, return_at, transfers, duration, link. Ссылку link добавляют к https://www.aviasales.com/.

Параметр Где Тип Обяз. Описание
token query string да API-токен (или заголовок X-Access-Token)
origin query string нет IATA-код города или аэропорта вылета
destination query string нет IATA-код назначения; обязателен, если нет origin
departure_at query string нет Дата вылета YYYY-MM или YYYY-MM-DD
return_at query string нет Дата возвращения; для билетов в одну сторону не указывать
one_way query boolean нет В одну сторону, по умолчанию true
direct query boolean нет Только прямые, по умолчанию false
currency query string нет Валюта, по умолчанию RUB
market query string нет Рынок данных, по умолчанию ru
limit query integer нет Записей на странице, по умолчанию 30, максимум 1000
page query integer нет Номер страницы
sorting query string нет price (по умолчанию) или route (популярность)
unique query boolean нет Только уникальные направления, если указан лишь origin

Нюансы

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


Если этого недостаточно — официальная документация: https://support.travelpayouts.com/hc/en-us/articles/203956163 Вся интеграция одним документом: https://mcp-everything.ru/integrations/travelpayouts-aviasales.md