Long-polling batch offer requests.
Endpoints
POST /air/batch_offer_requests- Create a batch offer requestGET /air/batch_offer_requests/{id}- Get a batch offer request
Examples
# Create a batch offer request
{:ok, response} = Travel.Flights.BatchOfferRequests.create(%{
slices: [%{origin: "LHR", destination: "JFK", departure_date: "2025-06-01"}],
passengers: [%{type: "adult"}]
})
# Poll for results
{:ok, response} = Travel.Flights.BatchOfferRequests.get("bor_123")
Summary
Functions
Create a batch offer request.
Get a batch offer request by ID (poll for available offers).
Functions
@spec create(map(), map() | nil) :: {:ok, Travel.Types.DuffelResponse.t()} | {:error, Travel.Error.t() | term()}
Create a batch offer request.
Parameters
params- Batch offer request parameters (same as regular offer requests)opts- Optional query parameters (supplier_timeout)
Returns
{:ok, %Travel.Types.DuffelResponse{data: %Types.CreateBatchOfferRequestResponse{}}}on success{:error, %Travel.Error{}}on failure
@spec get(String.t()) :: {:ok, Travel.Types.DuffelResponse.t()} | {:error, Travel.Error.t() | term()}
Get a batch offer request by ID (poll for available offers).
Parameters
batch_offer_request_id- The batch offer request ID
Returns
{:ok, %Travel.Types.DuffelResponse{data: %Types.BatchOfferRequest{}}}on success{:error, %Travel.Error{}}on failure