Duffel

Connect your AI agents to Duffel.

Available Tools

create_batch_offer_request

Create a batch flight search. Searches multiple airlines asynchronously and returns results as they come in.

get_batch_offer_request

Get batch offer request status and results by ID. Poll until status is complete to get all offers.

create_offer_request

Search for flights by creating an offer request. Specify origin, destination, dates, passengers, and cabin class. Returns available offers.

list_offer_requests

List offer requests with pagination. Use cursor from page_info for next page.

get_offer_request

Get offer request details by ID. Returns the original search parameters and any returned offers.

list_offers

List offers for an offer request with pagination. Sort by total_amount or total_duration. Use cursor from page_info for next page.

get_offer

Get offer details by ID. Optionally return available services like bags and seats.

update_offer_passenger

Update passenger details on an offer. Set name, loyalty accounts, or identity documents before booking.

create_order_cancellation

Initiate cancellation of an order. Returns refund details and expiry. Must confirm with confirm_order_cancellation before expiry.

list_order_cancellations

List order cancellations with pagination. Optionally filter by order ID. Use cursor from page_info for next page.

get_order_cancellation

Get order cancellation details by ID. Returns refund amount, status, and expiry time.

confirm_order_cancellation

Confirm an order cancellation. Must be confirmed before expiry. This action is irreversible.

create_order_change_request

Request to change an order’s flights. Specify slices to add and remove. Returns available change offers.

get_order_change_request

Get order change request details by ID. Returns available change offers.

list_order_change_offers

List change offers for an order change request. Compare prices and penalties. Use cursor from page_info for next page.

create_order_change

Select an order change offer to proceed with. Must confirm with confirm_order_change before expiry.

get_order_change

Get order change details by ID. Returns change costs, new total, and confirmation status.

confirm_order_change

Confirm an order change. Optionally provide payment if the change costs extra. This action is irreversible.

create_order

Book a flight by creating an order. Requires offer IDs, payment details, and passenger information. Use list_offers to find offers first.

list_orders

List orders with pagination. Filter by booking reference or awaiting payment status. Use cursor from page_info for next page.

get_order

Get order details by ID. Returns booking reference, passengers, slices, services, and payment status.

update_order

Update order metadata. Only custom metadata can be changed after booking.

create_partial_offer_request

Search for flights with partial offers. Returns offers grouped by slice, allowing mix-and-match of airlines per leg.

get_partial_offer_request

Get partial offer request details by ID. Returns partial offers grouped by slice.

create_payment

Create a payment for an order. Required for orders with awaiting_payment status. Use get_order to check payment status first.

list_payments

List payments with pagination. Optionally filter by order ID. Use cursor from page_info for next page.

get_payment

Get payment details by ID. Returns amount, currency, type, and associated order.

list_airlines

List airlines with pagination. Use cursor from page_info for next page.

get_airline

Get airline details by ID. Returns name, IATA code, logos, and conditions of carriage URL.

list_airports

List airports with pagination. Use cursor from page_info for next page.

get_airport

Get airport details by ID. Returns name, IATA/ICAO codes, city, country, coordinates, and timezone.

list_aircraft

List aircraft types with pagination. Use cursor from page_info for next page.

get_aircraft

Get aircraft type details by ID. Returns name and IATA code.

list_cities

List cities with pagination. Use cursor from page_info for next page.

get_city

Get city details by ID. Returns name, IATA code, and country code.

suggest_places

Search airports and cities by name. Returns matching places for use in flight searches.

list_loyalty_programs

List airline loyalty programmes with pagination. Use cursor from page_info for next page.

get_loyalty_program

Get loyalty programme details by ID. Returns airline name and programme name.

get_seat_maps

Get seat maps for an offer. Returns cabin layouts with rows, seats, and availability for each flight segment.

validate_credential

Validate Duffel API credentials by testing authentication with a lightweight API call. Returns {success, message}.