Travel.Flights.AirlineInitiatedChanges (travel v0.2.0)

Copy Markdown View Source

List, accept, and update airline-initiated changes.

Endpoints

  • GET /air/airline_initiated_changes - List changes for an order
  • POST /air/airline_initiated_changes/{id}/actions/accept - Accept a change
  • PATCH /air/airline_initiated_changes/{id} - Update a change

Examples

# List changes for an order
{:ok, response} = Travel.Flights.AirlineInitiatedChanges.list(%{order_id: "ord_123"})

# Accept a change
{:ok, response} = Travel.Flights.AirlineInitiatedChanges.accept("aic_123")

# Update a change with action taken
{:ok, response} = Travel.Flights.AirlineInitiatedChanges.update("aic_123", %{
  action_taken: "accepted"
})

@link https://duffel.com/docs/api/airline-initiated-changes

Summary

Functions

Accept an airline-initiated change.

List airline-initiated changes, optionally filtered by order.

Update an airline-initiated change with the action taken.

Functions

accept(change_id)

@spec accept(String.t()) ::
  {:ok, Travel.Types.DuffelResponse.t()} | {:error, Travel.Error.t() | term()}

Accept an airline-initiated change.

Parameters

  • change_id - The change ID to accept

Returns

  • {:ok, %Travel.Types.DuffelResponse{data: %Types.AirlineInitiatedChange{}}} on success
  • {:error, %Travel.Error{}} on failure

list(opts \\ nil)

@spec list(map() | nil) ::
  {:ok, Travel.Types.DuffelResponse.t()} | {:error, Travel.Error.t() | term()}

List airline-initiated changes, optionally filtered by order.

Parameters

  • opts - Optional query parameters:
    • :order_id - Filter by order ID
    • :limit - Results per page (max 200)
    • :before - Cursor for previous page
    • :after - Cursor for next page

Returns

  • {:ok, %Travel.Types.DuffelResponse{data: [%Types.AirlineInitiatedChange{}]}} on success
  • {:error, %Travel.Error{}} on failure

update(change_id, params)

@spec update(String.t(), map()) ::
  {:ok, Travel.Types.DuffelResponse.t()} | {:error, Travel.Error.t() | term()}

Update an airline-initiated change with the action taken.

Parameters

  • change_id - The change ID
  • params - Update parameters:
    • :action_taken - (required) One of "accepted", "cancelled", "changed"

Returns

  • {:ok, %Travel.Types.DuffelResponse{data: %Types.AirlineInitiatedChange{}}} on success
  • {:error, %Travel.Error{}} on failure