Skip to main content

Get Ancillaries

Retrieve available ancillary services (e.g., meals, insurance, priority check-in) for a selected flight option.


Endpoint​

  • URL: /api/v1/flight/getancillaries
  • Method: POST
  • Auth Required: Yes (Bearer Token/X-api-key)
  • Content-Type: application/json

Authentication​

This endpoint requires a valid JWT Bearer token in the Authorization header:

Authorization: Bearer <access_token>

Obtain tokens via /api/v1/sign-in (POST) with your credentials.


Request Structure​

FieldTypeRequiredDescription
systemstringNoSystem code (e.g., VN, VJ, 1A)
flightValuestringNoEncoded flight value from Search Result
airlinestringNoAirline code (IATA 2-letter, e.g., VN, VJ, AF)

Example Request:

{
"system": "VN",
"flightValue": "eyJmYXJlRGF0YUlkIjoxLCJvcHRpb25JZCI6MCwiZmxpZ2h0SWQiOjAsImxlZyI6MCwiYWlybGluZSI6IlZOIiwg...",
"airline": "VN"
}

Request Constraints & Business Rules​

  • system and flightValue must match the values from the flight search response.
  • If you want to add ancillaries to an existing booking, you should use the flightValue from the Retrieve Booking API response as the flightValue in the get ancillaries API request. This ensures the most up-to-date and valid flight context.
  • airline must be a valid IATA code for the selected flight.
  • Only available after a successful flight search.

Response Structure​

FieldTypeNullableDescription
systemstringYesName of the airline system
statusbooleanNotrue if successful, false if failed
errorErrorCode (object)YesError details (if any)
descriptionstringYesError description (if any)
trackingIdstringYesTracking ID for request logs
trackingTimestring (date-time)YesTime for request tracking
ancillariesarray of AncillaryYesList of available ancillary services

Ancillary Object​

FieldTypeNullableDescription
codestringYesAncillary service code
namestringYesService name (e.g., Meal, Insurance)
typestringYesService type (WCHR-Xe lăn, MEAL-Ăn uống, OTHER-Loẑi khÑc)
routestringYesRoute the service applies to (e.g., HANSGN)
pricesarray of PriceAncillaryTypeYesPrice details for each passenger type

PriceAncillaryType Object​

FieldTypeNullableDescription
passengerIdstringYesPassenger ID (for post-booking queries)
passengerTypestringYesPassenger type (ADT, CHD, INF)
pricenumberNoTotal price for this passenger type
currencystringYesCurrency (e.g., VND, USD)
valuestringYesEncoded ancillary value

Example Response​

{
"system": "VN",
"status": true,
"baggages": [],
"ancillaries": [
{
"code": "MEAL",
"name": "Meal",
"route": "HANSGN",
"prices": [
{
"passengerType": "ADT",
"price": 150000,
"currency": "VND",
"value": "eyJ2YWx1ZSI6ICJNRUFMIiwgInByaWNlIjogMTUwMDAwfQ=="
},
{
"passengerType": "CHD",
"price": 120000,
"currency": "VND",
"value": "eyJ2YWx1ZSI6ICJNRUFMIiwgInByaWNlIjogMTIwMDAwfQ=="
}
]
},
{
"code": "INS",
"name": "Travel Insurance",
"route": "HANSGN",
"prices": [
{
"passengerType": "ADT",
"price": 200000,
"currency": "VND",
"value": "eyJ2YWx1ZSI6ICJJTlMiLCAicHJpY2UiOiAyMDAwMDB9"
}
]
}
],
"error": null,
"description": null,
"trackingId": "abc123",
"trackingTime": "2025-07-01T06:57:26.6596055+00:00"
}

Ancillary & Price Structure​

  • Each ancillary represents an optional service (e.g., meal, insurance, priority check-in) that can be purchased for the selected flight.
  • The prices array lists the cost for each passenger type (ADT, CHD, INF). The value field is an encoded object used for subsequent booking or add-ancillary requests.

Error Codes​

See Error Codes for details on possible error responses.


Security & Validation​

  • All input is validated for type and required fields.
  • Only authenticated users can access this endpoint.
  • The endpoint is protected against tampering with flightValue and airline.

Validation Questions​

  • Are there any restrictions on which ancillaries can be combined?
  • Is the value field always required for subsequent add-ancillary requests?
  • Are there time limits for when ancillaries can be added before departure?

For integration support, see Contact Support.