Отрасль: Путешествия и транспорт. Актуально на 2026-10-24.
Публичный API данных Aviasales для партнёров Travelpayouts: цены на авиабилеты из кэша поисков пользователей Aviasales — самые дешёвые билеты на даты, календари цен на месяц и неделю, альтернативные направления, популярные направления, спецпредложения, поиск по диапазону цен. Данные хранятся в кэше 7 дней, поэтому API рекомендуется для статических страниц, а не для живого поиска.
Блок «Билеты Москва — Сочи от …» на странице направления или в статье: самые дешёвые варианты на нужный месяц.
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
Календарь «самая низкая цена на каждый день» — чтобы пользователь сразу видел дешёвые даты.
curl -G "https://api.travelpayouts.com/aviasales/v3/grouped_prices" \
-H "X-Access-Token: $TP_TOKEN" --compressed \
-d origin=LED -d destination=KZN -d departure_at=2026-12 -d group_by=departure_at -d currency=rub
Подборка «Куда полететь из Екатеринбурга» — направления с самыми низкими ценами.
curl -G "https://api.travelpayouts.com/aviasales/v3/prices_for_dates" \
-H "X-Access-Token: $TP_TOKEN" --compressed \
-d origin=SVX -d departure_at=2026-12 -d unique=true -d sorting=price -d limit=20 -d currency=rub
curl -G "https://api.travelpayouts.com/aviasales/v3/get_special_offers" \
-H "X-Access-Token: $TP_TOKEN" --compressed -d origin=SVX -d currency=rub
Фильтр «до 10 000 ₽» для подборок и рассылок.
curl -G "https://api.travelpayouts.com/aviasales/v3/search_by_price_range" \
-H "X-Access-Token: $TP_TOKEN" --compressed \
-d origin=MOW -d destination=- -d value_min=3000 -d value_max=10000 \
-d one_way=true -d direct=false -d limit=30 -d page=1 -d currency=rub
https://api.travelpayouts.comТип: 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
Самые дешёвые билеты на даты, найденные за последние 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 |
Заменяет /v1/prices/calendar и /v1/prices/monthly.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
token |
query | string | да | API-токен |
origin |
query | string | нет | IATA-код вылета |
destination |
query | string | нет | IATA-код назначения |
group_by |
query | string | нет | departure_at (по умолчанию) или month |
departure_at |
query | string | нет | Дата вылета |
return_at |
query | string | нет | Дата возвращения |
direct |
query | boolean | нет | Только прямые |
min_trip_duration |
query | integer | нет | Минимальная длительность поездки, дней |
max_trip_duration |
query | integer | нет | Максимальная длительность поездки, дней |
currency |
query | string | нет | Валюта |
market |
query | string | нет | Рынок данных |
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
token |
query | string | да | API-токен |
origin |
query | string | нет | IATA-код вылета |
destination |
query | string | нет | IATA-код назначения |
period_type |
query | string | нет | year, month или day; по умолчанию — текущий месяц |
beginning_of_period |
query | string | нет | Начало периода; обязателен при period_type=month |
group_by |
query | string | нет | dates (по умолчанию) или directions |
one_way |
query | boolean | нет | В одну сторону, по умолчанию true |
sorting |
query | string | нет | price, route, distance_unit_price |
trip_duration |
query | integer | нет | Длительность пребывания, дней |
trip_class |
query | integer | нет | 0 — эконом, 1 — бизнес, 2 — первый |
page |
query | integer | нет | Страница, по умолчанию 1 |
currency |
query | string | нет | Валюта |
market |
query | string | нет | Рынок данных |
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
token |
query | string | да | API-токен |
origin |
query | string | нет | IATA-код города или страны вылета, 2–3 символа |
destination |
query | string | нет | IATA-код города или страны назначения |
month |
query | string | нет | Начало месяца YYYY-MM-DD |
show_to_affiliates |
query | boolean | нет | true — только цены по партнёрскому маркеру (по умолчанию) |
trip_duration |
query | integer | нет | Длительность пребывания, недель |
one_way |
query | boolean | нет | В одну сторону, по умолчанию true |
limit |
query | integer | нет | Дней в месяце, по умолчанию 30 (для 31 дня — 31) |
currency |
query | string | нет | Валюта |
market |
query | string | нет | Рынок данных |
Цены на 7 дней вокруг дат: от 3 дней до и до 4 дней после.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
token |
query | string | да | API-токен |
origin |
query | string | нет | IATA-код вылета |
destination |
query | string | нет | IATA-код назначения |
depart_date |
query | string | нет | День или месяц вылета |
return_date |
query | string | нет | День или месяц возвращения |
show_to_affiliates |
query | boolean | нет | Только цены по партнёрскому маркеру |
currency |
query | string | нет | Валюта |
market |
query | string | нет | Рынок данных |
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
token |
query | string | да | API-токен |
origin |
query | string | нет | IATA-код вылета |
destination |
query | string | нет | IATA-код назначения |
limit |
query | integer | нет | Число вариантов, 1–20 |
depart_date |
query | string | нет | Месяц вылета yyyy-mm |
return_date |
query | string | нет | Месяц возвращения yyyy-mm |
flexibility |
query | integer | нет | Расширение диапазона дат, 0–7 дней |
distance |
query | integer | нет | Число вариантов, 1–20 |
show_to_affiliates |
query | boolean | нет | Только цены по партнёрскому маркеру |
currency |
query | string | нет | Валюта |
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
token |
query | string | да | API-токен |
destination |
query | string | нет | IATA-код города назначения |
locale |
query | string | нет | Язык результатов |
currency |
query | string | нет | Валюта |
limit |
query | integer | нет | 1–30 |
page |
query | integer | нет | Номер страницы |
Аномально низкие цены на выбранные направления. Если origin не указан, определяется по IP.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
token |
query | string | да | API-токен |
origin |
query | string | нет | IATA-код вылета |
destination |
query | string | нет | IATA-код назначения |
airline |
query | string | нет | IATA-код авиакомпании |
locale |
query | string | нет | Язык |
currency |
query | string | нет | Валюта |
market |
query | string | нет | Рынок данных |
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
token |
query | string | да | API-токен |
origin |
query | string | нет | IATA-код вылета |
destination |
query | string | нет | IATA-код назначения (- — все) |
value_min |
query | number | нет | Минимальная цена |
value_max |
query | number | нет | Максимальная цена |
one_way |
query | boolean | нет | В одну сторону |
direct |
query | boolean | нет | Только прямые, по умолчанию false |
locale |
query | string | нет | Язык |
currency |
query | string | нет | Валюта |
market |
query | string | нет | Рынок данных |
limit |
query | integer | нет | Записей на странице |
page |
query | integer | нет | Номер страницы |
success (true/false), data (при ошибке — {}), error (null при успехе).YYYY-MM или YYYY-MM-DD; время в ответах — UTC, ISO 8601. Цены по умолчанию — в рублях.expires_at.market) по умолчанию определяется по месту вылета, иначе — ru; данные разных рынков не пересекаются.Accept-Encoding: gzip, deflate.http://pics.avs.io/{width}/{height}/{iata}.png./v1/prices/cheap, /v1/prices/direct, /v1/prices/calendar, /v1/city-directions, /v1/airline-directions заменяются prices_for_dates и grouped_prices.prices_for_dates — до 1000 записей на странице./v1/prices/calendar — не больше 10 запросов в секунду; общие лимиты — в статье «API rate limits».Если этого недостаточно — официальная документация: https://support.travelpayouts.com/hc/en-us/articles/203956163 JSON: https://mcp-everything.ru/api/integrations/travelpayouts-aviasales. MCP: https://mcp-everything.ru/mcp