---
title: "Create Flight Ad Handoff"
method: POST
path: "/ad-deals/flights/{route_slug}/handoff"
tags: ["ad-deals"]
---

# Create Flight Ad Handoff

`POST /ad-deals/flights/{route_slug}/handoff`

## Path parameters

- `route_slug` string, required

## Request body

- FlightAdHandoffRequest
  - `engagement_type` 'chat' | 'deal', required
  - `ad_context` FlightAdDealResponse, required
    - `deal_type` 'flight'
    - `route_slug` string, required
    - `origin` AdPlace, required
      - `name` string, required
      - `code` string, required
    - `destination` AdPlace, required
      - `name` string, required
      - `code` string, required
    - `defaults` FlightSearchDefaults, required
      - `departure_date` string, date, nullable
      - `return_date` string, date, nullable
      - `trip_length_days` integer, nullable
      - `passengers` integer, nullable
      - `cabin_class` string, nullable
      - `outbound_only_display` boolean, nullable
    - `searched_at` string, date, required
    - `observed_at` string, date-time, nullable
    - `flights_checked` integer, required
    - `filtered_count` integer
    - `price_insights` object, nullable
    - `intro_message` string
    - `curation` FlightAdCuration, required
      - `take` string
      - `context` string
    - `flights` AdFlight[], required
      - `observation_id` string, required
      - `carrier` string, required
      - `carrier_code` string, required
      - `flight_numbers` string, required
      - `origin` string, nullable
      - `destination` string, nullable
      - `departure_time` string, nullable
      - `arrival_time` string, nullable
      - `duration_minutes` integer, nullable
      - `stops` integer
      - `price` AdFlightPrice, required
        - `amount` integer, required
        - `currency` string, required
      - `axel_price_flight_only` AdFlightPrice
        - `amount` integer, required
        - `currency` string, required
      - `axel_member_price` AdFlightPrice
        - `amount` integer, required
        - `currency` string, required
      - `savings` AdFlightPrice
        - `amount` integer, required
        - `currency` string, required
      - `departure_token` string, nullable
      - `booking_token` string, nullable
      - `layovers` object[]
      - `tag` string
      - `is_pick` boolean
  - `user_message` string, nullable
  - `selected_flight` SelectedAdFlight
    - `observation_id` string, required
    - `carrier` string, nullable
    - `carrier_code` string, nullable
    - `flight_numbers` string, nullable
    - `origin` string, nullable
    - `destination` string, nullable
    - `departure_time` string, nullable
    - `arrival_time` string, nullable
    - `duration_minutes` integer, nullable
    - `stops` integer, nullable
    - `price` object, nullable
    - `axel_price_flight_only` object, nullable
    - `savings` object, nullable
    - `tag` string, nullable
    - `is_pick` boolean, nullable

## Response `201`

Successful Response

- ApiAdDealsTripResponse
  - `response` string, required
  - `trip_id` string, nullable, required
  - `session_id` string, required
  - `navigate_to_trip` string, nullable
  - `stats` object, nullable

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/helloaxel/apis/client-api-gateway.md) · [All operations](https://skmtc.dev/helloaxel/apis/client-api-gateway/llms.txt) · [OpenAPI document](https://skmtc.dev/helloaxel/apis/client-api-gateway/revisions/5d2121d26b96?raw)
