Low-Cost Carrier UTA content
The Routehappy API endpoint provides access to Low-Cost Carrier (LCC) UTAs. LCC UTAs, unlike standard UTAs, provide information for carriers that do not file fares with ATPCO and, as such, do not require to be associated to a fare. They also do not require a fare source or a pseudo-city code.
Despite those differences, they still appear the same way in the API response.
Note
This page describes how the Routehappy API endpoint returns data for any LCC that does not file data with ATPCO. Some LCCs do file data with ATPCO, and the data for those carriers will be returned in the same fashion as any non-LCC.
Low-Cost Carriers Table
Code | Carrier |
---|---|
I5 | Air Asia India |
Z2 | Air Asia Philippines |
FD | Air Asia Thailand |
AK | AirAsia |
D7 | AirAsia X |
XJ | AirAsia X Thailand |
QZ | Indonesia AirAsia |
FR | Ryanair |
RK | Ryanair UK |
HV | Transavia |
W6 | Wizz Air |
U2 | Easyjet |
Requesting LCC UTAs
You can specify a request for LCC UTAs in the same way as you do for standard UTAs: by using the includes
parameter. You can also optionally filter the attributes in that response using the ticket_attributes_filter
.
{
"control": {
"includes": [
"uta"
],
"ticket_attributes_filter": [ // include the attributes
"advance_change", // you'd like in the response
"boarding_priority",
"brand",
"cancellation",
"carry_on_baggage",
"checked_baggage",
"check_in_priority",
"lounge_access",
"upgrade_eligibility"
],
// ...
},
// ...
}
Note
The os_override
field is not applicable for LCC UTAs.
Processing LCC UTA responses
Requesting LCC UTAs from the Routehappy API endpoint works in the same way as for standard UTAs. Whether you receive LCC UTAs is determined solely by the flights you try to identify - there is nothing extra that needs to be passed in the request. However, the response you get is different from what you'd get for standard UTAs, and this needs to be handled accordingly.
Note
Low-cost itineraries always consist of a single segment only.
Example Request and Response
Consider this LCC UTA request:
{
"control": {
"includes": [
"uta"
]
},
"data": {
"itineraries": [
{
"src": "1A",
"psgrs": [
"ADT"
],
"segments": [
{
"dep": "LCA",
"arr": "BRU",
"cxr": "FR",
"fltno": 2092,
"date": "2021-09-03",
"cabin": 1
// note there is no `fbc`
}
]
}
]
}
}
{
"data": {
"uuid": "a96beb8a-01e9-4f44-9ce9-b4e062bb3761",
"advance_change": [
{
"before_departure": {
"assessment": "Fee",
"description": "Change allowed for a fee",
"headline": "For a fee"
},
"id": "233198"
},
{
"before_departure": {
"assessment": "Fee",
"description": "Change allowed for a fee",
"headline": "For a fee"
},
"id": "232059"
},
{
"before_departure": {
"assessment": "Fee",
"description": "Change allowed for a fee",
"headline": "For a fee"
},
"id": "233197"
},
{
"before_departure": {
"assessment": "Fee",
"description": "Change allowed for a fee",
"headline": "For a fee"
},
"id": "228745"
},
{
"before_departure": {
"assessment": "Benefit",
"description": "Change allowed for free",
"headline": "Free"
},
"id": "230891"
},
{
"before_departure": {
"assessment": "Fee",
"description": "Change allowed for a fee",
"headline": "For a fee"
},
"id": "233196"
}
],
"amenity": {
"aircrafts": [],
"beverages": [],
"entertainments": [],
"fresh_foods": [],
"layouts": [],
"powers": [],
"seats": [],
"wifis": []
},
"amenity_summary": [],
"boarding_priority": [
{
"application": "free",
"assessment": "Benefit",
"commercial_name": "",
"description": "Priority boarding provided for free",
"headline": "Priority",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/f670ba4a-9bbd-46cb-b438-f58ae1a11b4c/large/boarding-priority.png?channel_id=EXPEDIA",
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/f670ba4a-9bbd-46cb-b438-f58ae1a11b4c/small/boarding-priority.png?channel_id=EXPEDIA"
},
{
"application": "free",
"assessment": "Neutral",
"commercial_name": "",
"description": "Standard boarding",
"headline": "Standard",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/f670ba4a-9bbd-46cb-b438-f58ae1a11b4c/large/boarding-priority.png?channel_id=EXPEDIA",
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/f670ba4a-9bbd-46cb-b438-f58ae1a11b4c/small/boarding-priority.png?channel_id=EXPEDIA"
}
],
"brand": [
{
"brand_codes": [],
"brand_name": "Standard Fare",
"id": "1166"
},
{
"brand_codes": [],
"brand_name": "Regular Fare",
"id": "11433"
},
{
"brand_codes": [],
"brand_name": "Value Fare",
"id": "2520"
},
{
"brand_codes": [],
"brand_name": "Plus Fare",
"id": "2521"
},
{
"brand_codes": [],
"brand_name": "Flexi Plus Fare",
"id": "10607"
}
],
"cancellation": [
{
"before_departure": {
"assessment": "Restriction",
"description": "Non-refundable",
"headline": "Non-refundable"
},
"id": "233202"
},
{
"before_departure": {
"assessment": "Restriction",
"description": "Non-refundable",
"headline": "Non-refundable"
},
"id": "233199"
},
{
"before_departure": {
"assessment": "Restriction",
"description": "Non-refundable",
"headline": "Non-refundable"
},
"id": "233203"
},
{
"before_departure": {
"assessment": "Restriction",
"description": "Non-refundable",
"headline": "Non-refundable"
},
"id": "232060"
},
{
"before_departure": {
"assessment": "Restriction",
"description": "Non-refundable",
"headline": "Non-refundable"
},
"id": "233201"
}
],
"carry_on_bag": [
{
"assessment": "Benefit",
"description": "1 free carry on up to a maximum weight of 10kg",
"free_bags": {
"attributes": {
"cxr": "FR ",
"seq_no": 212477,
"service_type": "B",
"sub_code": "0LN"
},
"display_text": "",
"optional_service_id": "",
"pieces": "1"
},
"headline": "1 Free up to 10kg & personal item",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4679447b-3c40-496d-8e5b-628a5540e2c7/large/carry-on-allowance.png",
"paid_bags": [],
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4679447b-3c40-496d-8e5b-628a5540e2c7/small/carry-on-allowance.png"
},
{
"assessment": "Restriction",
"description": "1 free carry on up to a maximum weight of 10kg",
"free_bags": {
"attributes": {
"cxr": "FR ",
"seq_no": 212478,
"service_type": "B",
"sub_code": "0LN"
},
"display_text": "",
"optional_service_id": "",
"pieces": "1"
},
"headline": "1 Free up to 10kg & personal item",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4679447b-3c40-496d-8e5b-628a5540e2c7/large/carry-on-allowance.png",
"paid_bags": [],
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4679447b-3c40-496d-8e5b-628a5540e2c7/small/carry-on-allowance.png"
},
{
"assessment": "Restriction",
"description": "1 free carry on up to a maximum weight of 10kg",
"free_bags": {
"attributes": {
"cxr": "FR ",
"seq_no": 232160,
"service_type": "B",
"sub_code": "0LN"
},
"display_text": "",
"optional_service_id": "",
"pieces": "1"
},
"headline": "1 Free up to 10kg & personal item",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4679447b-3c40-496d-8e5b-628a5540e2c7/large/carry-on-allowance.png",
"paid_bags": [],
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4679447b-3c40-496d-8e5b-628a5540e2c7/small/carry-on-allowance.png"
}
],
"check_in_priority": [
{
"application": "free",
"assessment": "Neutral",
"commercial_name": "",
"description": "Standard check-in priority",
"headline": "Standard",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4dc82a22-b65d-41b0-9c87-4a675fdbd2c7/large/check-in-priority.png?channel_id=EXPEDIA",
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4dc82a22-b65d-41b0-9c87-4a675fdbd2c7/small/check-in-priority.png?channel_id=EXPEDIA"
},
{
"application": "free",
"assessment": "Benefit",
"commercial_name": "",
"description": "Priority check-in provided for free",
"headline": "Priority",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4dc82a22-b65d-41b0-9c87-4a675fdbd2c7/large/check-in-priority.png?channel_id=EXPEDIA",
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4dc82a22-b65d-41b0-9c87-4a675fdbd2c7/small/check-in-priority.png?channel_id=EXPEDIA"
},
{
"application": "free",
"assessment": "Neutral",
"commercial_name": "",
"description": "Standard check-in priority",
"headline": "Standard",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4dc82a22-b65d-41b0-9c87-4a675fdbd2c7/large/check-in-priority.png?channel_id=EXPEDIA",
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4dc82a22-b65d-41b0-9c87-4a675fdbd2c7/small/check-in-priority.png?channel_id=EXPEDIA"
},
{
"application": "free",
"assessment": "Neutral",
"commercial_name": "",
"description": "Standard check-in priority",
"headline": "Standard",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4dc82a22-b65d-41b0-9c87-4a675fdbd2c7/large/check-in-priority.png?channel_id=EXPEDIA",
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4dc82a22-b65d-41b0-9c87-4a675fdbd2c7/small/check-in-priority.png?channel_id=EXPEDIA"
},
{
"application": "free",
"assessment": "Neutral",
"commercial_name": "",
"description": "Standard check-in priority",
"headline": "Standard",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4dc82a22-b65d-41b0-9c87-4a675fdbd2c7/large/check-in-priority.png?channel_id=EXPEDIA",
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/4dc82a22-b65d-41b0-9c87-4a675fdbd2c7/small/check-in-priority.png?channel_id=EXPEDIA"
}
],
"checked_bag": [
{
"assessment": "Benefit",
"description": "First checked bag free per passenger up to maximum weight 20kg",
"free_bags": {
"attributes": {
"cxr": "FR ",
"seq_no": 212481,
"service_type": "A",
"sub_code": "0DF"
},
"display_text": "",
"optional_service_id": "",
"pieces": "1"
},
"headline": "1 free up to 20kg total",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/a7cdfe21-cb65-434e-a39b-7fab0e17ba7c/large/checked-bag-allowance.png",
"paid_bags": [],
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/a7cdfe21-cb65-434e-a39b-7fab0e17ba7c/small/checked-bag-allowance.png"
},
{
"assessment": "Neutral",
"description": "1st checked bag free per passenger",
"free_bags": {
"attributes": {
"cxr": "FR ",
"seq_no": 228722,
"service_type": "A",
"sub_code": "0DF"
},
"display_text": "",
"optional_service_id": "",
"pieces": "1"
},
"headline": "1st free",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/a7cdfe21-cb65-434e-a39b-7fab0e17ba7c/large/checked-bag-allowance.png",
"paid_bags": [],
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/a7cdfe21-cb65-434e-a39b-7fab0e17ba7c/small/checked-bag-allowance.png"
},
{
"assessment": "Fee",
"description": "First checked bag free per passenger up to maximum weight 20kg",
"free_bags": {
"attributes": {
"cxr": "FR ",
"seq_no": 212482,
"service_type": "A",
"sub_code": "0DF"
},
"display_text": "",
"optional_service_id": "",
"pieces": "1"
},
"headline": "1 free up to 20kg total",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/a7cdfe21-cb65-434e-a39b-7fab0e17ba7c/large/checked-bag-allowance.png",
"paid_bags": [],
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/a7cdfe21-cb65-434e-a39b-7fab0e17ba7c/small/checked-bag-allowance.png"
},
{
"assessment": "Neutral",
"description": "1st checked bag free per passenger",
"free_bags": {
"attributes": {
"cxr": "FR ",
"seq_no": 232172,
"service_type": "A",
"sub_code": "0DF"
},
"display_text": "",
"optional_service_id": "",
"pieces": "1"
},
"headline": "1st free",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/a7cdfe21-cb65-434e-a39b-7fab0e17ba7c/large/checked-bag-allowance.png",
"paid_bags": [],
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/a7cdfe21-cb65-434e-a39b-7fab0e17ba7c/small/checked-bag-allowance.png"
}
],
"lounge_access": [
{
"application": "free",
"assessment": "Neutral",
"commercial_name": "",
"description": "Lounge access not available",
"headline": "Not available",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/f2d33bfe-01bc-4504-b121-b715015e923d/large/lounge-access.png?channel_id=EXPEDIA",
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/f2d33bfe-01bc-4504-b121-b715015e923d/small/lounge-access.png?channel_id=EXPEDIA"
}
],
"same_day_change": [
{
"application": "free",
"assessment": "Fee",
"commercial_name": "",
"description": "Same day change for a fee",
"headline": "For a fee",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/e7506a7c-446f-4a7c-b2fe-9568ccba3247/large/same-day-change.png?channel_id=EXPEDIA",
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/e7506a7c-446f-4a7c-b2fe-9568ccba3247/small/same-day-change.png?channel_id=EXPEDIA"
},
{
"application": "free",
"assessment": "Benefit",
"commercial_name": "",
"description": "Same day change for free",
"headline": "Free",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/e7506a7c-446f-4a7c-b2fe-9568ccba3247/large/same-day-change.png?channel_id=EXPEDIA",
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/e7506a7c-446f-4a7c-b2fe-9568ccba3247/small/same-day-change.png?channel_id=EXPEDIA"
}
],
"seat_selection": [
{
"application": "free",
"assessment": "Benefit",
"commercial_name": "",
"description": "Select seat anytime",
"headline": "Anytime",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/cd41f116-60ca-4a64-b0ab-2758a48e4cd9/large/seat-selection.png?channel_id=EXPEDIA",
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/cd41f116-60ca-4a64-b0ab-2758a48e4cd9/small/seat-selection.png?channel_id=EXPEDIA"
}
],
"upa": [],
"upgrade_eligibility": [
{
"application": "free",
"assessment": "Neutral",
"commercial_name": "",
"description": "Upgrade not applicable",
"headline": "Not applicable",
"id": "1",
"large_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/f52d5dab-8c40-45be-80de-2ab7aec94549/large/upgrade-eligibility.png?channel_id=EXPEDIA",
"small_icon_url": "https://d13cihc9138cdj.cloudfront.net/icons/f52d5dab-8c40-45be-80de-2ab7aec94549/small/upgrade-eligibility.png?channel_id=EXPEDIA"
}
]
},
"itineraries": [
{
"data": {
"legs": [
{
"fares": [
{
"advance_change": [
"232059"
],
"brand": "2520",
"cancellation": [
"233199"
],
"segments": [
{
"boarding_priority": [
[
"212486"
]
],
"carry_on_bag": [
[
"232160"
]
],
"check_in_priority": [
[
"232069"
]
],
"checked_bag": [
[
"212481"
]
],
"id": "LCA-BRU-FR-2092-20210903-ECON",
"lounge_access": [
[
"230896"
]
],
"overnight": "no",
"same_day_change": [
[
"230895"
]
],
"seat_selection": [
[
"230893"
]
],
"upas": [],
"upgrade_eligibility": [
[
"230897"
]
]
}
]
},
{
"advance_change": [
"232059"
],
"brand": "2521",
"cancellation": [
"233199"
],
"segments": [
{
"boarding_priority": [
[
"212486"
]
],
"carry_on_bag": [
[
"232160"
]
],
"check_in_priority": [
[
"232069"
]
],
"checked_bag": [
[
"212481"
]
],
"id": "LCA-BRU-FR-2092-20210903-ECON",
"lounge_access": [
[
"230896"
]
],
"overnight": "no",
"same_day_change": [
[
"230895"
]
],
"seat_selection": [
[
"230893"
]
],
"upas": [],
"upgrade_eligibility": [
[
"230897"
]
]
}
]
},
{
"advance_change": [
"232059"
],
"brand": "10607",
"cancellation": [
"233199"
],
"segments": [
{
"boarding_priority": [
[
"212486"
]
],
"carry_on_bag": [
[
"232160"
]
],
"check_in_priority": [
[
"232069"
]
],
"checked_bag": [
[
"212481"
]
],
"id": "LCA-BRU-FR-2092-20210903-ECON",
"lounge_access": [
[
"230896"
]
],
"overnight": "no",
"same_day_change": [
[
"230895"
]
],
"seat_selection": [
[
"230893"
]
],
"upas": [],
"upgrade_eligibility": [
[
"230897"
]
]
}
]
},
{
"advance_change": [
"232059"
],
"brand": "11433",
"cancellation": [
"233199"
],
"segments": [
{
"boarding_priority": [
[
"212486"
]
],
"carry_on_bag": [
[
"232160"
]
],
"check_in_priority": [
[
"232069"
]
],
"checked_bag": [
[
"212481"
]
],
"id": "LCA-BRU-FR-2092-20210903-ECON",
"lounge_access": [
[
"230896"
]
],
"overnight": "no",
"same_day_change": [
[
"230895"
]
],
"seat_selection": [
[
"230893"
]
],
"upas": [],
"upgrade_eligibility": [
[
"230897"
]
]
}
]
},
{
"advance_change": [
"232059"
],
"brand": "1166",
"cancellation": [
"233199"
],
"segments": [
{
"boarding_priority": [
[
"212486"
]
],
"carry_on_bag": [
[
"232160"
]
],
"check_in_priority": [
[
"232069"
]
],
"checked_bag": [
[
"212481"
]
],
"id": "LCA-BRU-FR-2092-20210903-ECON",
"lounge_access": [
[
"230896"
]
],
"overnight": "no",
"same_day_change": [
[
"230895"
]
],
"seat_selection": [
[
"230893"
]
],
"upas": [],
"upgrade_eligibility": [
[
"230897"
]
]
}
]
}
],
"total_travel_time": "4h30m"
}
]
},
"is_lcc": true,
"rq": {
"psgrs": [
"ADT"
],
"segments": [
{
"arr": "BRU",
"cabin": 1,
"cxr": "FR",
"date": "2021-09-03",
"dep": "LCA",
"fltno": 2092
}
],
"src": "1A"
},
"valid": true
}
]
}
How to Identify LCC UTAs in the Response
We know that the response contains LCC UTAs when the is_lcc
field is set to true
:
{
"data": {
// ..
},
"itineraries": [
{
"data": {
// ..
},
"is_lcc": true,
"rq": {
// ..
},
// ..
}
]
}
Multiple Fares and Brands for LCC UTAs
When the response contains LCC UTAs there might be multiple fares for the single itinerary. Each object in fares
will correspond to a single brand
, like so:
{
"data": {
"brand": [
{
"brand_codes": [],
"brand_name": "Standard Fare",
"id": "1166"
},
{
"brand_codes": [],
"brand_name": "Regular Fare",
"id": "11433"
},
{
"brand_codes": [],
"brand_name": "Value Fare",
"id": "2520"
},
{
"brand_codes": [],
"brand_name": "Plus Fare",
"id": "2521"
},
{
"brand_codes": [],
"brand_name": "Flexi Plus Fare",
"id": "10607"
}
],
// ..
},
"itineraries": [
{
"data": {
"legs": [
{
"fares": [
{
"brand": "2520",
"segments": [
{
// ..
}
],
// ..
},
{
"brand": "2521",
"segments": [
{
// ..
}
],
// ..
},
{
"brand": "10607",
"segments": [
{
// ..
}
],
// ..
},
{
"brand": "11433",
"segments": [
{
// ..
}
],
// ..
},
{
"brand": "1166",
"segments": [
{
// ..
}
],
// ..
}
],
"total_travel_time": "4h30m"
}
]
},
"is_lcc": true,
"rq": {
// ..
},
"valid": true
}
]
}