Duffel
Available Tools
Create a batch flight search. Searches multiple airlines asynchronously and returns results as they come in.
Get batch offer request status and results by ID. Poll until status is complete to get all offers.
Search for flights by creating an offer request. Specify origin, destination, dates, passengers, and cabin class. Returns available offers.
List offer requests with pagination. Use cursor from page_info for next page.
Get offer request details by ID. Returns the original search parameters and any returned 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 details by ID. Optionally return available services like bags and seats.
Update passenger details on an offer. Set name, loyalty accounts, or identity documents before booking.
Initiate cancellation of an order. Returns refund details and expiry. Must confirm with confirm_order_cancellation before expiry.
List order cancellations with pagination. Optionally filter by order ID. Use cursor from page_info for next page.
Get order cancellation details by ID. Returns refund amount, status, and expiry time.
Confirm an order cancellation. Must be confirmed before expiry. This action is irreversible.
Request to change an order’s flights. Specify slices to add and remove. Returns available change offers.
Get order change request details by ID. Returns available change offers.
List change offers for an order change request. Compare prices and penalties. Use cursor from page_info for next page.
Select an order change offer to proceed with. Must confirm with confirm_order_change before expiry.
Get order change details by ID. Returns change costs, new total, and confirmation status.
Confirm an order change. Optionally provide payment if the change costs extra. This action is irreversible.
Book a flight by creating an order. Requires offer IDs, payment details, and passenger information. Use list_offers to find offers first.
List orders with pagination. Filter by booking reference or awaiting payment status. Use cursor from page_info for next page.
Get order details by ID. Returns booking reference, passengers, slices, services, and payment status.
Update order metadata. Only custom metadata can be changed after booking.
Search for flights with partial offers. Returns offers grouped by slice, allowing mix-and-match of airlines per leg.
Get partial offer request details by ID. Returns partial offers grouped by slice.
Create a payment for an order. Required for orders with awaiting_payment status. Use get_order to check payment status first.
List payments with pagination. Optionally filter by order ID. Use cursor from page_info for next page.
Get payment details by ID. Returns amount, currency, type, and associated order.
List airlines with pagination. Use cursor from page_info for next page.
Get airline details by ID. Returns name, IATA code, logos, and conditions of carriage URL.
List airports with pagination. Use cursor from page_info for next page.
Get airport details by ID. Returns name, IATA/ICAO codes, city, country, coordinates, and timezone.
List aircraft types with pagination. Use cursor from page_info for next page.
Get aircraft type details by ID. Returns name and IATA code.
List cities with pagination. Use cursor from page_info for next page.
Get city details by ID. Returns name, IATA code, and country code.
Search airports and cities by name. Returns matching places for use in flight searches.
List airline loyalty programmes with pagination. Use cursor from page_info for next page.
Get loyalty programme details by ID. Returns airline name and programme name.
Get seat maps for an offer. Returns cabin layouts with rows, seats, and availability for each flight segment.
Validate Duffel API credentials by testing authentication with a lightweight API call. Returns {success, message}.