Post endpoint to search all flights.
https://outward-api-dev.farepod.co/api/v1/flights
More specifically, the input includes the following fields:
The output includes an array of objects, with each object representing a potential flight itinerary that matches the search criteria. Each object includes the following fields:
Input | Parent | Description | Data Type | Required |
---|---|---|---|---|
cabinClass | root | The cabin class for the flight | string | True |
passengers | root | The number of passengers for the flight. | Object | True |
adult | passengers | The number of adult passengers for the flight | integer | True |
child | passengers | The number of child passengers for the flight | integer | True |
infant | passengers | The number of infant passengers for the flight | integer | True |
routeInfo | root | The route information for the flight | list | True |
from | routeInfo | The origin airport code for the flight | Object | True |
code | from | The airport code for the origin airport | string | True |
to | routeInfo | The destination airport code for the flight | Object | True |
code | to | The airport code for the destination airport | string | True |
travelDate | routeInfo | The travel date for the flight | string | True |
filter | root | The filter options for the flight search | Object | True |
pnr | filter | The flight pnr type enum | "ALL" or "INSTANT_PNR" | True |
pft | filter | The fare type for the flight | string | True |
isDirectFlight | filter | Whether the flight should be a direct flight | boolean | True |
isConnectingFlight | filter | Whether the flight should be a connecting flight | boolean | True |
Field | Parent | Description | Data Type |
---|---|---|---|
segments | root | Details of the flight, including flight name, number, duration, stops, and arrival/departure details. | Array |
flight | segments | The name, code and number of the flight. | Object |
duration | segments | The duration of the flight in minutes. | Number |
layoverDuration | segments | The duration of any layovers during the flight in minutes. | Number |
stops | segments | The number of stops during the flight. | Number |
stopsOverAirports | segments | The codes of any airports where the flight stops. | Array |
arrival | segments | The date, time, and airport details of the flight's arrival. | Object |
date | segments.arrival | The date of the flight's arrival in YYYYMMDD format. | String |
time | segments.arrival | The time of the flight's arrival in HHMMSS format. | String |
airport | segments.arrival | The code, name, city, city code, country, country code, and terminal of the airport where the flight arrives. | Object |
departure | segments | The date, time, and airport details of the flight's departure. | Object |
date | segments.departure | The date of the flight's departure in YYYYMMDD format. | String |
time | segments.departure | The time of the flight's departure in HHMMSS format. | String |
airport | segments.departure | The code, name, city, city code, country, country code, and terminal of the airport where the flight departs. | Object |
priceList(sorted in increasing order of fare) | root | The fare details for the flight, including the total fare, net fare, fare components, taxes and fees, seats remaining, baggage details, refundable type, cabin class, and meal indicator for each fare type (adult, child, and infant). | Array |
id | priceList | A unique ID for the fare. | String |
totalFare | priceList | The total fare for the flight. | Number |
netFare | priceList | The net fare for the flight. | Number |
fareDescription | priceList | An object containing fare details for different passenger types (adult, child and infant). | Object |
adult | priceList.fareDescription | An object containing fare details for an adult passenger. | Object |
fareComponent | priceList.fareDescription.adult | An object containing the net, base, taxes and fees, and total fares for the adult passenger. | Object |
taxesAndFees | priceList.fareDescription.adult | An array of objects containing the names and values of taxes and fees for the adult passenger. | Object |
seatsRemaining | priceList.fareDescription.adult | The number of remaining seats available for adult passengers. | number |
baggage | priceList.fareDescription.adult |
An object that contains the baggage details for
adult passengers: checkIn: The check-in baggage limit for adult passengers. cabin: The cabin baggage limit for adult passengers. |
Object |
refundableType | priceList .fareDescription.adult. | The refundable type of the fare for adult passengers. | string |
cabinClass | priceList .fareDescription.adult. | The cabin class of the fare for adult passengers. | string |
fareClass | priceList .fareDescription.adult. | The fare class of the adult passengers. | string |
mealIndicator | priceList .fareDescription.adult. | A boolean flag indicating if meal is included in the fare for adult passengers. | boolean |
child | priceList .fareDescription | An object containing fare details for a child passenger | Object |
fareComponent | priceList .fareDescription.child | An object containing the net, base, taxes and fees, and total fares for the child passenger | Object |
taxesAndFees | priceList .fareDescription.child | An array of objects containing the names and values of taxes and fees for the child passenger | Object |
seatsRemaining | priceList .fareDescription.child | The number of remaining seats available for child passengers | number |
baggage | priceList .fareDescription.child | An object that contains the baggage details for adult passengers. checkIn: The check-in baggage limit for adult passengers. cabin: The cabin baggage limit for adult passengers. | Object |
refundableType | priceList .fareDescription.child | The refundable type of the fare for child passengers. | string |
cabinClass | priceList .fareDescription.child | The cabin class of the fare for child passengers. | string |
fareClass | priceList .fareDescription.child | The Fare class of the child passengers. | string |
mealIndicator | priceList .fareDescription.child | A boolean flag indicating if meal is included in the fare for child passengers | boolean |
duration | root | duration of flight in minutes | Number |
Post endpoint to search flight by id.
https://outward-api-dev.farepod.co/api/v1/flights/:id
Input includes single field:
The output includes an object, with following key fields:
Field | Parent | Description | Data Type | Required |
---|---|---|---|---|
passengers | root | An object with fields for the number of adult, child, and infant passengers | Object | True |
adult | passengers | Number of adult passengers | Number | True |
child | passengers | Number of child passengers | Number | True |
infant | passengers | Number of infant passengers | Number | True |
Field | Parent | Description | Data Type |
---|---|---|---|
segments | root | Details of each flight segment in the itinerary | Array |
flight | segments | Information about the airline operating the flight | Object |
name | segments.flight | Name of the airline | String |
code | segments.flight | Two-letter code of the airline | String |
number | segments.flight | Flight number | String |
duration | segments | Total duration of the flight segment in minutes | Number |
layoverDuration | segments | Duration of any layover in minutes | Number |
stops | segments | Number of stops in the flight segment | Number |
stopsOverAirports | segments | Array of airports where the flight stops | Array of Objects |
code | segments.stopsOverAirports | Three-letter code of the airport | String |
name | segments.stopsOverAirports | Name of the airport | String |
city | segments.stopsOverAirports | City where the airport is located | String |
cityCode | segments.stopsOverAirports | Two-letter code of the city | String |
country | segments.stopsOverAirports | Country where the airport is located | String |
countryCode | segments.stopsOverAirports | Two-letter code of the country | String |
terminal | segments.stopsOverAirports | Terminal where the flight stops | String |
arrival | segments | Details of the arrival airport | Object |
date | segments.arrival | Date of arrival in YYYYMMDD format | String |
time | segments.arrival | Time of arrival in HHMMSS format | String |
airport | segments.arrival | Details of the arrival airport | Object |
code | segments.arrival.airport | Three-letter code of the airport | String |
name | segments.arrival.airport | Name of the airport | String |
city | segments.arrival.airport | City where the airport is located | String |
cityCode | segments.arrival.airport | Two-letter code of the city | String |
country | segments.arrival.airport | Country where the airport is located | String |
countryCode | segments.arrival.airport | Two-letter code of the country | String |
terminal | segments.arrival.airport | Terminal where the flight arrives | String |
departure | segments | Details of the departure airport. | Object |
date | segments.departure | Date of departure in YYYYMMDD format | String |
time | segments.departure | Time of departure in HHMMSS format | String |
airport | segments.departure | Details of the departure airport | Object |
code | segments.departure.airport | Three-letter code of the airport | String |
name | segments.departure.airport | Name of the airport | String |
city | segments.departure.airport | City where the airport is located | String |
cityCode | segments.departure.airport | Two-letter code of the city | String |
country | segments.departure.airport | Country where the airport is located | String |
countryCode | segments.departure.airport | Two-letter code of the country | String |
terminal | segments.departure.airport | Terminal where the flight departs | String |
operatingAirline | segments | Information about the airline operating the flight (if different from the marketing airline) | Object |
priceList(sorted in increasing order of fare) | root | The fare details for the flight, including the total fare, net fare, fare components, taxes and fees, seats remaining, baggage details, refundable type, cabin class, and meal indicator for each fare type (adult, child, and infant). | Array |
id | priceList | A unique ID for the fare. | String |
totalFare | priceList | The total fare for the flight. | Number |
netFare | priceList | The net fare for the flight. | Number |
fareDescription | priceList | An object containing fare details for different passenger types (adult, child and infant). | Object |
adult | priceList.fareDescription | An object containing fare details for an adult passenger. | Object |
fareComponent | priceList.fareDescription.adult | An object containing the net, base, taxes and fees, and total fares for the adult passenger. | Object |
taxesAndFees | priceList.fareDescription.adult | An array of objects containing the names and values of taxes and fees for the adult passenger. | Object |
seatsRemaining | priceList.fareDescription.adult | The number of remaining seats available for adult passengers. | number |
baggage | priceList.fareDescription.adult |
An object that contains the baggage details for
adult passengers: checkIn: The check-in baggage limit for adult passengers. cabin: The cabin baggage limit for adult passengers. |
Object |
refundableType | priceList .fareDescription.adult. | The refundable type of the fare for adult passengers. | string |
cabinClass | priceList .fareDescription.adult. | The cabin class of the fare for adult passengers. | string |
fareClass | priceList .fareDescription.adult. | The fare class of the passengers. | string |
mealIndicator | priceList .fareDescription.adult. | A boolean flag indicating if meal is included in the fare for adult passengers. | boolean |
duration | root | The duration of the flight in minutes. | Number |
stops | root | Whether flight is non stop. | String |
bookingId | root | A unique ID for the fare. | String |
Post endpoint to search fare rules of a flight by id.
https://outward-api-dev.farepod.co/api/v1/flights/:id/fare-rules
The input body is empty.
The output includes an object, with a single key :
The POST endpoint is used to create a booking, which involves adding passenger details. This endpoint returns a booking ID that is subsequently used in the payment endpoint.
https://outward-api-dev.farepod.co/api/v1/bookings/:id/passenger-details
id passed is pricelist.id that we get from search flights
Input includes following fields:
The output includes an object, with a single key :
Input | Description | Data Type | Required | Empty Value |
---|---|---|---|---|
passengers | Object containing information about the passengers traveling | Object | True | {} |
passengers.adults | Array of objects containing information about each adult passenger | Array | True | [] |
passengers.adults.title | The title of the passenger, such as 'Mr' or 'Mrs' or 'Ms' or 'Master' | String | True | Mandatory Field |
passengers.adults.firstName | The first name of the passenger | String | True | Mandatory Field |
passengers.adults.lastName | The last name of the passenger | String | True | Mandatory Field |
passengers.adults.isInfant | Boolean indicating whether the passenger is an infant (under 2 years old) | Boolean | True | Mandatory Field |
passengers.adults.dob (Mandatory only for infants and all international passengers) |
Date of birth of the passenger | String | True | "" |
passengers.adults.isInternational | Boolean indicating whether the passenger is an international traveler | Boolean | True | Mandatory Field |
passengers.adults.passport (Mandatory only for international flights) |
Object containing information about the passenger's passport | Object | False |
{ "expiry": "", "nationality": "", "number": "" , "issueDate": "" } |
passengers.adults.passport.expiry | The expiry date of the passenger's passport | String | False | "" |
passengers.adults.passport.nationality | The nationality of the passenger, as specified by the passport | String | False | "" |
passengers.adults.passport.number | The passport number of the passenger | String | False | "" |
passengers.adults.passport.issueDate | The issue date of the passenger | String | False | "" |
passengers.children(Same sub-fields as adult) | Array of objects containing information about each child passenger | Array | True | [] |
passengers.infants (Same sub-fields as adult but dob is mandatory) |
Array of objects containing information about each infant passenger (under 2 years old) | Array | True | [] |
contactDetails | Object containing the contact details of the person booking the travel | Object | True | Mandatory Field |
contactDetails.mobileNumber | The mobile phone number of the person booking the travel | String | True | Mandatory Field |
contactDetails.email | The email address of the person booking the travel | String | True | Mandatory Field |
The POST endpoint serves to validate the booking information and securely process the payment. Once the booking details are verified, the payment can be finalized through this endpoint.
https://outward-api-dev.farepod.co/api/v1/bookings/:id/book
Note that the id passed here is booking id that we get from create booking endpoint.
Input includes following fields:
The output includes an object, with a single key :