canonical: https://jentic.com/apis/amadeus.com/amadeus-branded-fares-upsell

# Amadeus Branded Fares Upsell

The Amadeus Branded Fares Upsell API takes a flight offer and returns the carrier's branded fare families for that itinerary, complete with included services such as bags, seat selection, and refundability. The single POST to /shopping/flight-offers/upselling sends an existing flight offer payload back to Amadeus and gets matching upsell options, so booking flows can present 'Economy Light' through 'Business Flex' tiers side by side. It targets airline.com replacement experiences and corporate booking tools that need branded merchandising rather than a single base fare.

## For AI agents

Return branded fare families for a flight offer with included services and price deltas. Agents POST a flight offer to /shopping/flight-offers/upselling to surface upgrade tiers.

## Scope

Does not search flights, price offers, or create bookings - use only to expand an existing flight offer into its branded fare families.

## Capabilities

- Return branded fare families for an existing flight offer in a single POST
- Surface included services per fare such as checked bags, seat selection, and changes
- Show price deltas between basic and higher branded tiers for the same itinerary
- Match upsell options to the carrier's published fare brands at the time of search
- Power side-by-side fare comparison panels in a booking flow
- Include refundability and change rules per branded tier for compliance display

## Use cases

### Side-by-Side Fare Comparison

Replace the airline.com 'choose your fare' page in a third-party booking tool by sending the selected flight offer to /shopping/flight-offers/upselling. The response contains every branded fare family the carrier offers for that itinerary - Economy Light through Business Flex - with included bags, seat selection rights, and price deltas, ready to render in a comparison panel.

Example prompt: POST a Lufthansa flight offer to /shopping/flight-offers/upselling and return all branded fare options with their included services and price deltas.

### Corporate Travel Policy Enforcement

Corporate booking tools enforce policy by selecting a specific branded tier - for example, only fares that include a checked bag and free changes. The upsell endpoint returns enough metadata per tier to filter out non-compliant fares before they reach the traveller, reducing the number of out-of-policy bookings that need exception handling.

Example prompt: Filter the upsell response down to fares that include both a checked bag and free changes and surface the cheapest compliant tier.

### Ancillary Revenue Optimisation

Travel resellers can lift ancillary revenue by presenting the upsell tiers prominently rather than defaulting to the cheapest fare. The branded fare response includes the price delta and the tangible included services per tier, which is enough to highlight the value of moving from Light to Flex on the booking page.

Example prompt: Render an upsell panel that highlights the price delta and added services from Economy Light to Economy Flex for the selected offer.

### Agent-Driven Fare Recommendation

An AI travel agent asked 'should I upgrade to flex on this fare?' can call the upsell endpoint with the selected offer and reason over the response. Through Jentic the agent searches for 'show branded fare options for a flight offer', loads the schema, posts the offer, and returns a natural-language recommendation comparing what the user gets at each tier.

Example prompt: Use Jentic to call the upsell operation with the selected flight offer and produce a natural-language comparison of the available fare tiers.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /shopping/flight-offers/upselling | Get branded fare options for a flight offer |

## Key resources

- **Flight Offer Upsell** — POST a flight offer to receive matching branded fare families with included services.

## Why Jentic

- **Setup:** Wiring the Branded Fares Upsell API by hand means handling the Amadeus OAuth 2.0 client_credentials flow, refreshing the bearer token, shaping the existing flight-offer payload for the POST /shopping/flight-offers/upselling body, and targeting the right Amadeus host and version. Through Jentic you install once, import Branded Fares Upsell from the API Directory, store the Amadeus client credentials once, and your agent calls it.
- **Permission scoping:** The flight offer travels in the request body rather than as a resource id in the URL path, so scoping is by operation. You limit the agent to the operations it needs, such as expanding a flight offer into its branded fare families, and it cannot reach search, pricing, or booking operations unless you add them.
- **Credential handling:** Your Amadeus client_id and client_secret are stored once, encrypted, by your own Jentic One instance, which performs the client_credentials exchange and injects a fresh bearer token at execution time. The raw secret never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'show the branded fare options for this flight offer', and Jentic returns the /shopping/flight-offers/upselling operation with its input schema so the agent posts the offer and reads the fare tiers without browsing the Amadeus docs.

## Related APIs

- **Amadeus Flight Availabilities Search** — Surfaces the flight offers that the upsell endpoint expands into branded tiers.
- **Amadeus Flight Offers Price** — Confirms the priced offer for a selected branded fare before booking.
- **Amadeus Flight Create Orders** — Books the priced offer that came out of the upsell selection.

## FAQ

### What authentication does the Branded Fares Upsell API use?

The API uses the Amadeus OAuth 2.0 client-credentials flow. Exchange API key and secret at the Amadeus token endpoint and send the bearer token on the /shopping/flight-offers/upselling POST. Through Jentic the credentials live in the encrypted vault and the bearer token never reaches the agent prompt.

### What input does the upsell endpoint expect?

It expects a flight offer payload - typically the response object from a Flight Offers Search call - wrapped in the request body. The endpoint then returns the branded fare families that match the same itinerary, so the upsell call is always paired with a prior search.

### What are the rate limits for the Branded Fares Upsell API?

Rate limits are not declared in the OpenAPI spec and depend on the Amadeus contract tier. The upsell call is heavier than a reference-data lookup, so expect a tighter per-second cap and queue or batch when running comparison scans across many offers.

### How do I show branded fare options through Jentic?

Run pip install jentic, then use the search query 'show branded fare options for a flight offer'. Jentic returns the /shopping/flight-offers/upselling operation, you load the schema, post the flight offer object, and execute. The response includes every branded tier and its included services.

### Does every carrier return branded fares?

No. The response depends on whether the carrier publishes branded fare content into the Amadeus distribution stream for that itinerary. Carriers that have not enabled branded fares return only the base offer, so always handle the case where the response contains a single tier.

### Is the Branded Fares Upsell API free?

Amadeus self-service APIs include a free test environment with quota limits and a paid production tier. Production access is contracted with Amadeus and pricing scales with transaction volume - confirm current rates in the developer portal.

### Can I limit what my agent is allowed to do with the Branded Fares Upsell API?

Yes. Because your Jentic One instance is self-hosted, your own rules decide which operations and credentials the agent may use. Since the flight offer travels in the request body rather than a URL path, scoping is by operation, so you can allow only the upsell call that expands a flight offer into its branded fare families. The agent cannot reach flight search, pricing, or booking operations unless you explicitly grant them.
