Skip to content

Validate air itinerary

Request

Validates the air itinerary for availability and pricing

Security
Bearer
Bodyapplication/jsonrequired
workflowIdsobject(WorkflowIds)

The set of unique response ids associated with the booking workflow.

tripIdobject(TripId)

The trip ID with which this booking will be associated.

travelersArray of objects(AirBookTravelerInfo)
bookingChargesArray of objects(BookingCharge)
promotionCodeobject(PromotionCode)

Promo code applied to the order (optional)

curl -i -X POST \
  https://api-ext-sboxmeta.partners.spotnana.com/v2/air/revalidate-itinerary \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "workflowIds": {
      "checkoutResponseId": "string",
      "seatMapResponseId": "string",
      "paymentSetupResponseId": "string",
      "initiateBookingId": "string"
    },
    "tripId": {
      "id": "2783425534"
    },
    "travelers": [
      {
        "travelerDetails": {
          "travelerId": {
            "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
          },
          "travelerInfo": {
            "userId": {
              "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
            }
          },
          "travelerType": "ADULT",
          "title": "MR",
          "name": {
            "family1": "Gandas",
            "family2": "FamilyTwo",
            "given": "Vichitr",
            "middle": "Kumar",
            "suffix": "SR",
            "preferred": "Don"
          },
          "gender": "FEMALE",
          "dob": {
            "iso8601": "2017-07-21"
          },
          "phoneNumber": {
            "countryCode": 91,
            "countryCodeSource": "FROM_NUMBER_WITH_PLUS_SIGN",
            "extension": "222",
            "isoCountryCode": "IN",
            "italianLeadingZero": true,
            "nationalNumber": 8150,
            "numberOfLeadingZeros": 1,
            "preferredDomesticCarrierCode": "7",
            "rawInput": "77777",
            "type": "MOBILE"
          },
          "email": "example@email.com",
          "identityDocs": [
            {
              "passport": {
                "docId": "PassportID",
                "expiryDate": {},
                "issueCountry": "IN",
                "issuedDate": {},
                "nationalityCountry": "IN",
                "type": "REGULAR"
              }
            }
          ],
          "address": {
            "addressLines": [
              "Golden Gate Bridge"
            ],
            "administrativeArea": "CA",
            "administrativeAreaName": "California",
            "description": "San Francisco Home",
            "isDefault": true,
            "languageCode": "en",
            "locality": "San Francisco",
            "locationCode": "LAX",
            "organization": "Spotnana",
            "postalCode": "94130",
            "continentCode": "AF",
            "recipients": [
              "string"
            ],
            "regionCode": "US",
            "regionName": "America",
            "revision": 1,
            "sortingCode": "Jamaica",
            "sublocality": "string",
            "timezone": "America/Los_Angeles",
            "coordinates": {
              "latitude": 77.1025,
              "longitude": 28.7041
            }
          },
          "emergencyContactInfo": {
            "address": {
              "addressLines": [
                "Golden Gate Bridge"
              ],
              "administrativeArea": "CA",
              "administrativeAreaName": "California",
              "description": "San Francisco Home",
              "isDefault": true,
              "languageCode": "en",
              "locality": "San Francisco",
              "locationCode": "LAX",
              "organization": "Spotnana",
              "postalCode": "94130",
              "continentCode": "AF",
              "recipients": [
                "string"
              ],
              "regionCode": "US",
              "regionName": "America",
              "revision": 1,
              "sortingCode": "Jamaica",
              "sublocality": "string",
              "timezone": "America/Los_Angeles",
              "coordinates": {
                "latitude": 77.1025,
                "longitude": 28.7041
              }
            },
            "designation": "MANAGER",
            "email": "emergency-contact@email.com",
            "name": {
              "family1": "Gandas",
              "family2": "FamilyTwo",
              "given": "Vichitr",
              "middle": "Kumar",
              "suffix": "SR",
              "preferred": "Don"
            },
            "phoneNumber": {
              "countryCode": 91,
              "countryCodeSource": "FROM_NUMBER_WITH_PLUS_SIGN",
              "extension": "222",
              "isoCountryCode": "IN",
              "italianLeadingZero": true,
              "nationalNumber": 8150,
              "numberOfLeadingZeros": 1,
              "preferredDomesticCarrierCode": "7",
              "rawInput": "77777",
              "type": "MOBILE"
            },
            "userOrgId": {
              "organizationAgencyId": {
                "id": "string"
              },
              "organizationId": {
                "id": "string"
              },
              "userId": {
                "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
              },
              "tmcInfo": {
                "id": {},
                "primaryServiceProviderTmc": {},
                "secondaryServiceProviderTmcs": [
                  null
                ],
                "partnerTmcId": {}
              },
              "tmcBasicInfo": {
                "contractingTmc": {},
                "bookingTmc": {}
              }
            }
          },
          "loyaltyInfos": [
            {
              "appliedTo": [
                "TAJ"
              ],
              "id": "firstId",
              "issuedBy": "firstIssuedBy",
              "type": "AIR",
              "linked": false,
              "tier": "GOLD"
            }
          ],
          "emergencyContact": {
            "name": "John Smith",
            "email": "emergency-contact@email.com",
            "designation": "MANAGER",
            "relation": "SPOUSE",
            "phoneNumbers": [
              {
                "countryCode": 91,
                "countryCodeSource": "FROM_NUMBER_WITH_PLUS_SIGN",
                "extension": "222",
                "isoCountryCode": "IN",
                "italianLeadingZero": true,
                "nationalNumber": 8150,
                "numberOfLeadingZeros": 1,
                "preferredDomesticCarrierCode": "7",
                "rawInput": "77777",
                "type": "MOBILE"
              }
            ],
            "preferredLanguage": "en-US"
          },
          "rawCredit": {
            "type": "string",
            "pnrOwningPcc": "string",
            "unusedCreditPcc": "string",
            "departureCountry": "USA",
            "arrivalCountry": "USA",
            "ticketType": "TICKET_TYPE_UNKNOWN",
            "departureDate": {
              "iso8601": "2017-07-21T17:32Z"
            },
            "segmentsAvailable": "UNKNOWN",
            "traveler": {
              "userId": {
                "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
              }
            },
            "passengerName": {
              "family1": "Gandas",
              "family2": "FamilyTwo",
              "given": "Vichitr",
              "middle": "Kumar",
              "suffix": "SR",
              "preferred": "Don"
            },
            "airlineInfo": {
              "airlineCode": "AA",
              "airlineName": "American Airlines"
            },
            "totalFare": {
              "amount": 510,
              "currencyCode": "GBP",
              "convertedAmount": 715.42,
              "convertedCurrency": "USD",
              "otherCoinage": [
                {}
              ]
            },
            "issueDate": {
              "iso8601": "2017-07-21T17:32Z"
            },
            "expiryDate": {
              "iso8601": "2017-07-21T17:32Z"
            },
            "source": "SABRE",
            "sourcePnr": "MC5ONS",
            "flightIds": [
              "string"
            ],
            "ticketNumber": "5267779139217",
            "travelerIndex": 2
          }
        },
        "seats": [
          {
            "flightId": "string",
            "seatNumbers": [
              "string"
            ]
          }
        ],
        "baggages": [
          {
            "legId": "string",
            "baggageIds": [
              "string"
            ]
          }
        ],
        "ancillaries": [
          {
            "ancillaryId": "ancillary_0"
          }
        ],
        "shareContactInfo": false,
        "specialServiceRequests": [
          {
            "indexes": {
              "legIndex": 1,
              "flightIndex": 2
            },
            "flightIndex": 0,
            "code": "WCHC",
            "info": "Special meal without egg."
          }
        ]
      }
    ],
    "bookingCharges": [
      {
        "amount": {
          "base": {
            "amount": 510,
            "currencyCode": "GBP",
            "convertedAmount": 715.42,
            "convertedCurrency": "USD",
            "otherCoinage": [
              {
                "coinageCode": "BREX_POINTS",
                "amount": 1000,
                "conversionRate": 0.01,
                "preferredCurrencyConversionRate": 0.01,
                "otherCoinageMetadata": {}
              }
            ]
          },
          "tax": {
            "amount": 510,
            "currencyCode": "GBP",
            "convertedAmount": 715.42,
            "convertedCurrency": "USD",
            "otherCoinage": [
              {
                "coinageCode": "BREX_POINTS",
                "amount": 1000,
                "conversionRate": 0.01,
                "preferredCurrencyConversionRate": 0.01,
                "otherCoinageMetadata": {}
              }
            ]
          },
          "taxBreakdown": [
            {
              "amount": {
                "amount": 510,
                "currencyCode": "GBP",
                "convertedAmount": 715.42,
                "convertedCurrency": "USD",
                "otherCoinage": [
                  {}
                ]
              },
              "taxCode": "VAT",
              "percentage": 9,
              "description": "AIR TRAVELLERS SECURITY CHARGE"
            }
          ]
        },
        "paymentMethod": {
          "selectedPaymentSource": {
            "paymentSourceId": "f49d00fe-1eda-4304-ba79-a980f565281d",
            "rawPaymentSource": {
              "type": "DPAN",
              "cardDetails": {
                "company": "VISA",
                "token": "4111111111111111",
                "expiry": {}
              }
            },
            "postPaymentRedirectionUrl": "https://mycompany.com/checkout?paymentSourceId=f49d00fe-1eda-4304-ba79-a980f565281d",
            "cvv": "string",
            "amount": {
              "amount": 510,
              "currencyCode": "GBP",
              "convertedAmount": 715.42,
              "convertedCurrency": "USD",
              "otherCoinage": [
                {}
              ]
            }
          }
        }
      }
    ],
    "promotionCode": {
      "code": "NEWUSER"
    }
  }'

Responses

OK

Bodyapplication/json
bookingIdstring

The booking ID for the booking.

Example:"bookingid"
fareBreakDownobject(BookingFareBreakdown)
legPricesArray of objects(LegPrice)
perTravelerPricesArray of objects(PerTravelerPrice)
policyDetailsobject(PnrPolicyInfo)

Policy Info applicable for the associated itinerary

mcoIssuanceEligibilitystring(McoIssuanceEligibility)

It indicates whether an MCO can be issued for this ticket. It is dependent on the validating airline of the ticket.

Enum:"ELIGIBLE""NOT_ELIGIBLE""MAYBE_ELIGIBLE"
residueTypestring(ResidueType)

Type of residue expected when ticket is exchanged to a lower fare amount. Indicates whether the residual value will be converted to MCO, refunded, or forfeited. This is determined at revalidation time before the exchange is completed.

Enum:"NO_RESIDUE""MCO""FORFEITED""REFUNDED"
Response
{ "bookingId": "bookingid", "fareBreakDown": { "totalFare": { … }, "merchantFee": { … }, "airlineFee": { … }, "changeFee": { … }, "appliedCreditValue": { … }, "fareDifference": { … } }, "legPrices": [ { … } ], "perTravelerPrices": [ { … } ], "policyDetails": { "policies": [ … ], "ruleResultInfos": [ … ] }, "mcoIssuanceEligibility": "ELIGIBLE", "residueType": "NO_RESIDUE" }