Оформление и оплата авиабилета
flight_bookBuy airline tickets using an offer ID, with final fare, baggage, and rules displayed for approval. One click on the payment button completes the purchase and debits your account.
Instructions
КУПИТЬ авиабилет. РЕАЛЬНЫЕ ДЕНЬГИ. Это ОДИН шаг: у авиа нет отдельной брони, вызов сразу оформляет и списывает. Подтверждение — кнопка: тул сам покажет «Оплатить/Отмена» с итоговой суммой. НЕ спрашивай «да/нет» текстом — покажи тариф, багаж и правила из flight_offer(), согласие даёт кнопка. Клиент без элиситации получает отказ, деньги при этом не двигаются.
⚠️ ПОДПИСЬ ВОСПРОИЗВЕДЕНА, НО ЖИВОЙ ПЛАТЁЖ НИ РАЗУ НЕ ВЫПОЛНЯЛСЯ. Схема x-api-signature восстановлена из JS travel-вебвью и совпадает с захватом байт-в-байт (HmacSHA256, ключ — travel-сессия; см. client.travel_api_signature), вместе с X-Detach-Key/X-Detach-Timeout — тул шлёт их все. Чего НЕ хватает: ключ подписи — это ОТДЕЛЬНАЯ web-сессия travel, которую даёт SSO-мост session/link (travel_link_session), а он вживую не подключён. Поэтому сейчас тул честно откажет «ОПЛАТА НЕ ОТПРАВЛЕНА» (деньги не двигаются), пока travel- сессия недоступна. Живьём платёж не гонялся — надёжный путь остаётся приложение.
offer_id — из flight_search(), fare — номер тарифа из flight_offer(). passengers="me" — владелец счёта (паспорт и латиница из данных банка); для нескольких — JSON-список, как у train_book(). Детская бронь (младше 18) не поддержана — тул откажет, детский билет оформляется в приложении. seats — необязательно, «13A,13B» по одному на пассажира в том же порядке; без них место выдадут при регистрации.
Сумму тул считает сам (тариф + места) и кладёт на кнопку свою цифру, а не ту, что назвал агент: цена тарифа могла измениться с момента поиска.
Возврата авиабилета через MCP нет — в API банка такой операции не нашлось.
force=True — повторить покупку, чей исход не подтверждён, и только после проверки в trips() и приложении, что билет не выписан.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| fare | No | ||
| force | No | ||
| seats | No | ||
| offer_id | Yes | ||
| account_id | No | ||
| passengers | No | me |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |