API reference
/Air
/- Get air itineraries
Get flight attributes
Get selected itinerary
Get Airlines Information (Air)
Get flight checkout details
Get flight seat map
Initiate booking
Validate air itinerary
Validate air itinerary (interim)
Create air pnr
Cancel Air Pnr
Get PNR exchange details
Modify Search
Modify Book
Edit PNR
Get Special Service Requests (SSR)
Get Special Service Requests (SSR) for a Category
Returns the Air Raw Fare Rules for a Segment or Pnr
Accept schedule change
Get air itineraries
Get Air Itineraries available for the given search parameters
Security
Bearer
Information about each of the travelers in the search request. This information is required.
The list of all legs for which search results need to be returned.
Corporate data to be collected during the search request workflow.
The search mode to be used for the search request.
Default:"NORMAL"
Enum:"NORMAL""EXPRESS""EXPRESS_EXTENDED"
Example:"EXPRESS"
- Sandbox URLhttps://api-ext-sboxmeta.partners.spotnana.com/v2/air/search-flights
- Spotnana mock serverhttps://developer.spotnana.com/_mock/openapi/airapi/v2/air/search-flights
curl -i -X POST \
https://api-ext-sboxmeta.partners.spotnana.com/v2/air/search-flights \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"travelers": [
{
"travelerType": "ADULT",
"travelerAge": {
"numYears": 22
},
"travelerInfo": {
"userId": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
}
}
],
"legs": [
{
"origin": {
"city": "NYC",
"airport": "JFK",
"multiAirports": {
"airports": [
"JFK"
]
}
},
"destination": {
"city": "NYC",
"airport": "JFK",
"multiAirports": {
"airports": [
"JFK"
]
}
},
"date": {
"iso8601": "2017-07-21"
}
}
],
"filters": [
{
"cabin": {
"type": "DEFAULT",
"cabin": "ECONOMY"
},
"maxNumStops": 0,
"timeRange": {
"timeRanges": [
{
"legIndex": 0,
"departure": {
"min": {},
"max": {}
},
"arrival": {
"min": {},
"max": {}
}
}
]
},
"alliance": {
"alliances": [
"STAR_ALLIANCE"
],
"airlines": [
"string"
]
},
"fareRange": {
"min": {
"amount": 510,
"currencyCode": "GBP",
"convertedAmount": 715.42,
"convertedCurrency": "USD",
"otherCoinage": [
{
"coinageCode": "BREX_POINTS",
"amount": 1000,
"conversionRate": 0.01,
"preferredCurrencyConversionRate": 0.01,
"otherCoinageMetadata": {}
}
]
},
"max": {
"amount": 510,
"currencyCode": "GBP",
"convertedAmount": 715.42,
"convertedCurrency": "USD",
"otherCoinage": [
{
"coinageCode": "BREX_POINTS",
"amount": 1000,
"conversionRate": 0.01,
"preferredCurrencyConversionRate": 0.01,
"otherCoinageMetadata": {}
}
]
}
},
"airlinePref": {
"airlinePrefs": [
{
"legIndex": 0,
"airline": [
"string"
]
}
]
},
"fareType": "UNKNOWN",
"changeable": "NO_CHANGEABLE_FILTER",
"connectingAirports": {
"legFilters": [
{
"legIndex": 0,
"airportCodes": [
"string"
]
}
]
},
"seatPref": {
"seatTypes": [
"UNKNOWN"
],
"minPitchInch": 0
},
"covid": {
"vaccine": "NO_PREFERENCE",
"covidTest": "NO_PREFERENCE",
"faceMask": "NO_PREFERENCE",
"temperatureCheck": "NO_PREFERENCE",
"blockedAdjacentSeats": "NO_PREFERENCE"
},
"baggage": {
"freeCheckedBag": true,
"freeCarryOn": true
},
"flightNumber": {
"flightNumber": {
"num": "321",
"airlineCode": "AA"
}
},
"policyFilter": {
"onlyInPolicy": true
},
"multiTicketFilter": {
"hideMultiTicket": true
},
"fareCategoryFilter": {
"fareCategories": [
{
"ngsCategory": "UNKNOWN_NGS_CATEGORY",
"cabinViewCategory": "UNKNOWN_CABIN_CATEGORY"
}
]
},
"corporateCodeFilter": {
"corpAccountCodes": [
"PPF03"
]
},
"unusedCreditFilter": {
"hideWithoutCredits": true
},
"payByPointsFilter": {
"payByPoints": true
}
}
],
"sortOptions": [
{
"sortBy": "PRICE",
"sortOrder": "ASCENDING",
"shelfNumber": 0
}
],
"legSearchParams": {
"searchId": "string",
"selectedRateOptionId": "string",
"legIndex": 0,
"asyncRouteHappy": true,
"pageNumber": 0,
"pageSize": 0
},
"corporateInfo": {
"preSearchAnswers": {
"answers": [
{
"entityId": "string",
"userInput": "string",
"itemIds": [
0
],
"answers": [
{
"item": "string",
"value": "string",
"description": "string"
}
],
"customFieldType": "QUESTION",
"questionDisplayText": "string",
"question": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"name": "string",
"questionFormat": "CHECKBOX",
"optionInfo": {
"source": "MANUAL",
"sourceMetadata": {},
"totalNumOptions": 0,
"options": [
null
]
},
"isRequired": true,
"isDisabled": true,
"includeInItinerary": true,
"customFieldLocations": [
"POLICY_APPROVAL_EMAIL"
],
"matchConditions": {
"travelerConditions": {
"workerTypes": [],
"countries": [],
"legalEntities": [],
"departments": [],
"costCenters": [],
"offices": []
},
"travelTypes": [
null
],
"travelRegionTypes": [
null
],
"tripUsageTypes": [
null
]
},
"questionType": {
"preSearchQuestionType": "PURPOSE_OF_TRIP",
"preCheckoutQuestionType": "OOP_REASON_CODE"
}
}
}
],
"userEntitiesResponseId": "string"
},
"customFieldV3Responses": [
{
"fieldId": "84922011-b03d-4966-bc95-c5b49bc2e342",
"fieldName": "string",
"armId": "0fd508db-63ff-4444-bfb1-b89c43061433",
"includeLocations": [
"APPROVAL_EMAILS"
],
"selectedOptions": [
{
"name": "string",
"translatedName": "string",
"description": "string",
"translatedDescription": "string",
"additionalUserInput": "string",
"additionalInfos": [
"string"
],
"additionalInfoConfigs": [
{}
],
"optionId": "dee15a0e-f1fe-4cd8-88ac-c090810707f8"
}
]
}
]
},
"searchMode": "EXPRESS",
"rateCodes": [
"AMX01"
]
}'OK
The unique ID for this search response. This value must be passed on in the subsequent booking API calls.
Example:"ChBjZDg3ZjRjZmRmMTFmMWFiEhBjZDg3Z"
Response
{ "searchId": "ChBjZDg3ZjRjZmRmMTFmMWFiEhBjZDg3Z", "itineraryDetails": { "itineraries": [ … ], "flightData": [ … ] }, "paginationParams": { "numResults": 0, "numPages": 0 }, "metadata": { "airlineInfo": [ … ], "applicableAlliances": [ … ], "legBylegPricing": true, "enableFareCategories": [ … ], "isExpressSearch": true, "availableConnectingAirports": [ … ] }, "waiverApplicabilityType": "WAIVER_APPLICABILITY_UNKNOWN" }