{ "status": "success", "tracking_id": "911782723960982214WATP", "performanceDuration": "", "data": [ { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-0", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-0", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT5H55M", "transit_time": "PT5H55M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p0", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T15:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T17:55:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1060" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1060" }, "booking_class": { "cabin_class": "Lite", "cabin_code": "LITE", "booking_code": "LITE", "meal_code": null, "seat_available": 5 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": null, "unit": null, "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT05H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Lite", "cabin_code": "LITE", "booking_code": "LITE", "meal_code": null, "seat_available": 5 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": null, "unit": null, "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 96.09, "gross_total": 96.09, "base_fare": 56, "tax": 40.09, "sell": { "currency": "EUR", "total": 96.09, "base_fare": 56, "tax": 40.09 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTYuMDksImJhc2VfZmFyZSI6NTYsInRheCI6NDAuMDl9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5Ni4wOSwiYmFzZV9mYXJlIjo1NiwidGF4Ijo0MC4wOSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5Ni4wOSwiYmFzZV9mYXJlIjo1NiwidGF4Ijo0MC4wOX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 96.09, "base_fare": 56, "tax": 40.09, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "56.00", "tax": "40.09", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 96.09, "base_fare": 56, "tax": 40.09, "gross": { "base_fare": "56.00", "tax": "40.09", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijk2LjA5IiwiYmFzZV9mYXJlIjoiNTYuMDAiLCJ0YXgiOiI0MC4wOSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU2LjAwIiwidGF4IjoiNDAuMDkiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI5Ni4wOSIsImJhc2VfZmFyZSI6IjU2LjAwIiwidGF4IjoiNDAuMDkiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI1Ni4wMCIsInRheCI6IjQwLjA5IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiOTYuMDkiLCJiYXNlX2ZhcmUiOiI1Ni4wMCIsInRheCI6IjQwLjA5IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjk2LjA5LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 96.09, "filter": { "id": "F1MS00008-0", "price": 96.09, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Lite", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T15:45:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301545mad2026073017551060mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-1", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-1", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT5H55M", "transit_time": "PT5H55M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p1", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T15:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T17:55:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1060" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1060" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 5 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT05H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 5 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 127.08, "gross_total": 127.08, "base_fare": 86, "tax": 41.08, "sell": { "currency": "EUR", "total": 127.08, "base_fare": 86, "tax": 41.08 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTI3LjA4LCJiYXNlX2ZhcmUiOjg2LCJ0YXgiOjQxLjA4fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTI3LjA4LCJiYXNlX2ZhcmUiOjg2LCJ0YXgiOjQxLjA4LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjEyNy4wOCwiYmFzZV9mYXJlIjo4NiwidGF4Ijo0MS4wOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 127.08, "base_fare": 86, "tax": 41.08, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "86.00", "tax": "41.08", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 127.08, "base_fare": 86, "tax": 41.08, "gross": { "base_fare": "86.00", "tax": "41.08", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjEyNy4wOCIsImJhc2VfZmFyZSI6Ijg2LjAwIiwidGF4IjoiNDEuMDgiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI4Ni4wMCIsInRheCI6IjQxLjA4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCJ9LCJjb25maWciOnsibWFya3VwX3R5cGUiOm51bGwsIm1hcmt1cF90aXRsZSI6bnVsbCwicmV2ZW51ZSI6IjAuMDAiLCJ0aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsInRvdGFsX3RpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwiY3VycmVuY3lFeGNoYW5nZVJhdGUiOiIxLjAwIiwiRk1HX092ZXJ3cml0ZVJ1bGVzIjpbXX19LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTI3LjA4IiwiYmFzZV9mYXJlIjoiODYuMDAiLCJ0YXgiOiI0MS4wOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6Ijg2LjAwIiwidGF4IjoiNDEuMDgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOjAsInBlcl9zZWdtZW50X2Rpc2NvdW50IjowLCJzZWdtZW50X2Rpc2NvdW50IjoiMC4wMCIsInN1cHBsaWVyX3NlZ21lbnRfZmVlc0NhbGN1bGF0ZSI6bnVsbCwic2VnbWVudF9kaXNjb3VudF9hY2NvdW50UHVycG9zZSI6bnVsbH19LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMjcuMDgiLCJiYXNlX2ZhcmUiOiI4Ni4wMCIsInRheCI6IjQxLjA4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjEyNy4wOCwidGF4QnJlYWtkb3duIjp7IkJEIjp7ImFtb3VudCI6IjAuMDAifSwiVVQiOnsiYW1vdW50IjoiMC4wMCJ9LCJFNSI6eyJhbW91bnQiOiIwLjAwIn0sIllRIjp7ImFtb3VudCI6IjAuMDAifSwiWVIiOnsiYW1vdW50IjoiMC4wMCJ9LCJPdGhlciI6eyJhbW91bnQiOiIwLjAwIn0sInN1cHBsaWVyVGF4RGF0YSI6W119fSwiZGlzY291bnRfY29taXNzaW9uX3RpdGxlIjpudWxsLCJkaXNjb3VudF9jb21pc3Npb25fcmF0aW8iOjAsImR5bmFtaWNfbWFya3VwX3R5cGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3RpdGxlIjpudWxsLCJkeW5hbWljX21hcmt1cF9yYXRpbyI6bnVsbCwiYXBwbGljYWJsZV9jb21pc3Npb24iOm51bGwsImFwcGxpY2FibGVfZHluYW1pY19tYXJrdXAiOm51bGx9" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 127.08, "filter": { "id": "F1MS00008-1", "price": 127.08, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Standard", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T15:45:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301545mad2026073017551060mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-2", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-2", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT9H45M", "transit_time": "PT9H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p5", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T20:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T22:05:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32N", "name": "Airbus A320-212", "picture": "32N.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "booking_class": { "cabin_class": "Discount", "cabin_code": "DISCOUNT", "booking_code": "DISCOUNT", "meal_code": null, "seat_available": 5 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": 499, "lay_over": "PT09H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "Discount", "cabin_code": "DISCOUNT", "booking_code": "DISCOUNT", "meal_code": null, "seat_available": 5 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 159.38, "gross_total": 159.38, "base_fare": 59, "tax": 100.38, "sell": { "currency": "EUR", "total": 159.38, "base_fare": 59, "tax": 100.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU5LjM4LCJiYXNlX2ZhcmUiOjU5LCJ0YXgiOjEwMC4zOH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE1OS4zOCwiYmFzZV9mYXJlIjo1OSwidGF4IjoxMDAuMzgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU5LjM4LCJiYXNlX2ZhcmUiOjU5LCJ0YXgiOjEwMC4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 159.38, "base_fare": 59, "tax": 100.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "59.00", "tax": "100.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 159.38, "base_fare": 59, "tax": 100.38, "gross": { "base_fare": "59.00", "tax": "100.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1OS4zOCIsImJhc2VfZmFyZSI6IjU5LjAwIiwidGF4IjoiMTAwLjM4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNTkuMDAiLCJ0YXgiOiIxMDAuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxNTkuMzgiLCJiYXNlX2ZhcmUiOiI1OS4wMCIsInRheCI6IjEwMC4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU5LjAwIiwidGF4IjoiMTAwLjM4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTU5LjM4IiwiYmFzZV9mYXJlIjoiNTkuMDAiLCJ0YXgiOiIxMDAuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MTU5LjM4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 159.38, "filter": { "id": "F1MS00008-2", "price": 159.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32N", "aircraft_name": "Airbus A320-212", "cabin_class": "Discount", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T20:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607302005lis202607302205827lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-3", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-3", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H25M", "transit_time": "PT12H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p6", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T17:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T19:25:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "321", "name": "Airbus A321", "picture": "321.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "booking_class": { "cabin_class": "Discount", "cabin_code": "DISCOUNT", "booking_code": "DISCOUNT", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": 499, "lay_over": "PT12H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "Discount", "cabin_code": "DISCOUNT", "booking_code": "DISCOUNT", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 159.38, "gross_total": 159.38, "base_fare": 59, "tax": 100.38, "sell": { "currency": "EUR", "total": 159.38, "base_fare": 59, "tax": 100.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU5LjM4LCJiYXNlX2ZhcmUiOjU5LCJ0YXgiOjEwMC4zOH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE1OS4zOCwiYmFzZV9mYXJlIjo1OSwidGF4IjoxMDAuMzgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU5LjM4LCJiYXNlX2ZhcmUiOjU5LCJ0YXgiOjEwMC4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 159.38, "base_fare": 59, "tax": 100.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "59.00", "tax": "100.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 159.38, "base_fare": 59, "tax": 100.38, "gross": { "base_fare": "59.00", "tax": "100.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1OS4zOCIsImJhc2VfZmFyZSI6IjU5LjAwIiwidGF4IjoiMTAwLjM4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNTkuMDAiLCJ0YXgiOiIxMDAuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxNTkuMzgiLCJiYXNlX2ZhcmUiOiI1OS4wMCIsInRheCI6IjEwMC4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU5LjAwIiwidGF4IjoiMTAwLjM4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTU5LjM4IiwiYmFzZV9mYXJlIjoiNTkuMDAiLCJ0YXgiOiIxMDAuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MTU5LjM4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 159.38, "filter": { "id": "F1MS00008-3", "price": 159.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "321", "aircraft_name": "Airbus A321", "cabin_class": "Discount", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T17:25:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301725lis202607301925825lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-4", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-4", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT18H0M", "transit_time": "PT18H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "NDC:Travelport", "offerId": "TP_CPO0", "productId": "TPp2", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:50:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T13:50:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": null, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "823" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "823" }, "booking_class": { "cabin_class": "DISCOUNT", "cabin_code": null, "booking_code": null, "meal_code": null, "seat_available": null }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": null, "unit": null, "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": 10, "unit": "kg", "title": "1 pieces 10 kg" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": null, "lay_over": "PT18H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "DISCOUNT", "cabin_code": null, "booking_code": null, "meal_code": null, "seat_available": null }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": null, "unit": null, "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": 10, "unit": "kg", "title": "1 pieces 10 kg" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 159.38, "gross_total": 159.38, "base_fare": 59, "tax": 100.38, "sell": { "currency": "EUR", "total": 159.38, "base_fare": 59, "tax": 100.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU5LjM4LCJiYXNlX2ZhcmUiOjU5LCJ0YXgiOjEwMC4zOH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE1OS4zOCwiYmFzZV9mYXJlIjo1OSwidGF4IjoxMDAuMzgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU5LjM4LCJiYXNlX2ZhcmUiOjU5LCJ0YXgiOjEwMC4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 159.38, "base_fare": 59, "tax": 100.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "59.00", "tax": "100.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 159.38, "base_fare": 59, "tax": 100.38, "gross": { "base_fare": "59.00", "tax": "100.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1OS4zOCIsImJhc2VfZmFyZSI6IjU5LjAwIiwidGF4IjoiMTAwLjM4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNTkuMDAiLCJ0YXgiOiIxMDAuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxNTkuMzgiLCJiYXNlX2ZhcmUiOiI1OS4wMCIsInRheCI6IjEwMC4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU5LjAwIiwidGF4IjoiMTAwLjM4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTU5LjM4IiwiYmFzZV9mYXJlIjoiNTkuMDAiLCJ0YXgiOiIxMDAuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MTU5LjM4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 159.38, "filter": { "id": "F1MS00008-4", "price": 159.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "DISCOUNT", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:50:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301150lis202607301350823lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-5", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-5", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT5H55M", "transit_time": "PT5H55M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p2", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T15:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T17:55:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1060" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1060" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 5 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT05H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 5 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 163.24, "gross_total": 163.24, "base_fare": 121, "tax": 42.24, "sell": { "currency": "EUR", "total": 163.24, "base_fare": 121, "tax": 42.24 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTYzLjI0LCJiYXNlX2ZhcmUiOjEyMSwidGF4Ijo0Mi4yNH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE2My4yNCwiYmFzZV9mYXJlIjoxMjEsInRheCI6NDIuMjQsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTYzLjI0LCJiYXNlX2ZhcmUiOjEyMSwidGF4Ijo0Mi4yNH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 163.24, "base_fare": 121, "tax": 42.24, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "121.00", "tax": "42.24", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 163.24, "base_fare": 121, "tax": 42.24, "gross": { "base_fare": "121.00", "tax": "42.24", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE2My4yNCIsImJhc2VfZmFyZSI6IjEyMS4wMCIsInRheCI6IjQyLjI0IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTIxLjAwIiwidGF4IjoiNDIuMjQiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxNjMuMjQiLCJiYXNlX2ZhcmUiOiIxMjEuMDAiLCJ0YXgiOiI0Mi4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjEyMS4wMCIsInRheCI6IjQyLjI0IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTYzLjI0IiwiYmFzZV9mYXJlIjoiMTIxLjAwIiwidGF4IjoiNDIuMjQiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MTYzLjI0LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 163.24, "filter": { "id": "F1MS00008-5", "price": 163.24, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Flex", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T15:45:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301545mad2026073017551060mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-6", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-6", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT16H45M", "transit_time": "PT16H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p14", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T20:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T22:05:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32N", "name": "Airbus A320-212", "picture": "32N.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "booking_class": { "cabin_class": "Discount", "cabin_code": "DISCOUNT", "booking_code": "DISCOUNT", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T14:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T16:30:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H40M", "distance": 499, "lay_over": "PT16H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "E90", "name": "EMBRAER 190", "picture": "E90.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "booking_class": { "cabin_class": "Discount", "cabin_code": "DISCOUNT", "booking_code": "DISCOUNT", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 176.38, "gross_total": 176.38, "base_fare": 70, "tax": 106.38, "sell": { "currency": "EUR", "total": 176.38, "base_fare": 70, "tax": 106.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTc2LjM4LCJiYXNlX2ZhcmUiOjcwLCJ0YXgiOjEwNi4zOH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE3Ni4zOCwiYmFzZV9mYXJlIjo3MCwidGF4IjoxMDYuMzgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTc2LjM4LCJiYXNlX2ZhcmUiOjcwLCJ0YXgiOjEwNi4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 176.38, "base_fare": 70, "tax": 106.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "70.00", "tax": "106.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 176.38, "base_fare": 70, "tax": 106.38, "gross": { "base_fare": "70.00", "tax": "106.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE3Ni4zOCIsImJhc2VfZmFyZSI6IjcwLjAwIiwidGF4IjoiMTA2LjM4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzAuMDAiLCJ0YXgiOiIxMDYuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxNzYuMzgiLCJiYXNlX2ZhcmUiOiI3MC4wMCIsInRheCI6IjEwNi4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjcwLjAwIiwidGF4IjoiMTA2LjM4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTc2LjM4IiwiYmFzZV9mYXJlIjoiNzAuMDAiLCJ0YXgiOiIxMDYuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MTc2LjM4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 176.38, "filter": { "id": "F1MS00008-6", "price": 176.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32N", "aircraft_name": "Airbus A320-212", "cabin_class": "Discount", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T20:05:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-31T16:30:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607302005lis202607302205827lis202607311450rak2026073116301454", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-7", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-7", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H15M", "transit_time": "PT3H15M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p19", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:15:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T20:35:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1062" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1062" }, "booking_class": { "cabin_class": "Lite", "cabin_code": "LITE", "booking_code": "LITE", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": null, "unit": null, "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT03H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Lite", "cabin_code": "LITE", "booking_code": "LITE", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": null, "unit": null, "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 191.13, "gross_total": 191.13, "base_fare": 148, "tax": 43.13, "sell": { "currency": "EUR", "total": 191.13, "base_fare": 148, "tax": 43.13 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTkxLjEzLCJiYXNlX2ZhcmUiOjE0OCwidGF4Ijo0My4xM30sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE5MS4xMywiYmFzZV9mYXJlIjoxNDgsInRheCI6NDMuMTMsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTkxLjEzLCJiYXNlX2ZhcmUiOjE0OCwidGF4Ijo0My4xM319", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 191.13, "base_fare": 148, "tax": 43.13, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "148.00", "tax": "43.13", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 191.13, "base_fare": 148, "tax": 43.13, "gross": { "base_fare": "148.00", "tax": "43.13", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE5MS4xMyIsImJhc2VfZmFyZSI6IjE0OC4wMCIsInRheCI6IjQzLjEzIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTQ4LjAwIiwidGF4IjoiNDMuMTMiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxOTEuMTMiLCJiYXNlX2ZhcmUiOiIxNDguMDAiLCJ0YXgiOiI0My4xMyIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE0OC4wMCIsInRheCI6IjQzLjEzIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTkxLjEzIiwiYmFzZV9mYXJlIjoiMTQ4LjAwIiwidGF4IjoiNDMuMTMiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MTkxLjEzLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 191.13, "filter": { "id": "F1MS00008-7", "price": 191.13, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "7M8", "aircraft_name": "Boeing 737Max", "cabin_class": "Lite", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:15:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301815mad2026073020351062mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-8", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-8", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT9H45M", "transit_time": "PT9H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p7", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T20:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T22:05:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32N", "name": "Airbus A320-212", "picture": "32N.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "booking_class": { "cabin_class": "Classic", "cabin_code": "CLASSIC", "booking_code": "CLASSIC", "meal_code": null, "seat_available": 5 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": 499, "lay_over": "PT09H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "Classic", "cabin_code": "CLASSIC", "booking_code": "CLASSIC", "meal_code": null, "seat_available": 5 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 199.38, "gross_total": 199.38, "base_fare": 99, "tax": 100.38, "sell": { "currency": "EUR", "total": 199.38, "base_fare": 99, "tax": 100.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTk5LjM4LCJiYXNlX2ZhcmUiOjk5LCJ0YXgiOjEwMC4zOH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE5OS4zOCwiYmFzZV9mYXJlIjo5OSwidGF4IjoxMDAuMzgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTk5LjM4LCJiYXNlX2ZhcmUiOjk5LCJ0YXgiOjEwMC4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 199.38, "base_fare": 99, "tax": 100.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "99.00", "tax": "100.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 199.38, "base_fare": 99, "tax": 100.38, "gross": { "base_fare": "99.00", "tax": "100.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE5OS4zOCIsImJhc2VfZmFyZSI6Ijk5LjAwIiwidGF4IjoiMTAwLjM4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiOTkuMDAiLCJ0YXgiOiIxMDAuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxOTkuMzgiLCJiYXNlX2ZhcmUiOiI5OS4wMCIsInRheCI6IjEwMC4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6Ijk5LjAwIiwidGF4IjoiMTAwLjM4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTk5LjM4IiwiYmFzZV9mYXJlIjoiOTkuMDAiLCJ0YXgiOiIxMDAuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MTk5LjM4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 199.38, "filter": { "id": "F1MS00008-8", "price": 199.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32N", "aircraft_name": "Airbus A320-212", "cabin_class": "Classic", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T20:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607302005lis202607302205827lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-9", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-9", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H25M", "transit_time": "PT12H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p8", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T17:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T19:25:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "321", "name": "Airbus A321", "picture": "321.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "booking_class": { "cabin_class": "Classic", "cabin_code": "CLASSIC", "booking_code": "CLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": 499, "lay_over": "PT12H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "Classic", "cabin_code": "CLASSIC", "booking_code": "CLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 199.38, "gross_total": 199.38, "base_fare": 99, "tax": 100.38, "sell": { "currency": "EUR", "total": 199.38, "base_fare": 99, "tax": 100.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTk5LjM4LCJiYXNlX2ZhcmUiOjk5LCJ0YXgiOjEwMC4zOH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE5OS4zOCwiYmFzZV9mYXJlIjo5OSwidGF4IjoxMDAuMzgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTk5LjM4LCJiYXNlX2ZhcmUiOjk5LCJ0YXgiOjEwMC4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 199.38, "base_fare": 99, "tax": 100.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "99.00", "tax": "100.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 199.38, "base_fare": 99, "tax": 100.38, "gross": { "base_fare": "99.00", "tax": "100.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE5OS4zOCIsImJhc2VfZmFyZSI6Ijk5LjAwIiwidGF4IjoiMTAwLjM4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiOTkuMDAiLCJ0YXgiOiIxMDAuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxOTkuMzgiLCJiYXNlX2ZhcmUiOiI5OS4wMCIsInRheCI6IjEwMC4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6Ijk5LjAwIiwidGF4IjoiMTAwLjM4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTk5LjM4IiwiYmFzZV9mYXJlIjoiOTkuMDAiLCJ0YXgiOiIxMDAuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MTk5LjM4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 199.38, "filter": { "id": "F1MS00008-9", "price": 199.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "321", "aircraft_name": "Airbus A321", "cabin_class": "Classic", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T17:25:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301725lis202607301925825lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-10", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-10", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT18H0M", "transit_time": "PT18H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "NDC:Travelport", "offerId": "TP_CPO0", "productId": "TPp7", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:50:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T13:50:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": null, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "823" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "823" }, "booking_class": { "cabin_class": "CLASSIC", "cabin_code": null, "booking_code": null, "meal_code": null, "seat_available": null }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 23, "unit": "kg", "title": "1 pieces 23 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": 10, "unit": "kg", "title": "1 pieces 10 kg" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": null, "lay_over": "PT18H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "CLASSIC", "cabin_code": null, "booking_code": null, "meal_code": null, "seat_available": null }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 23, "unit": "kg", "title": "1 pieces 23 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": 10, "unit": "kg", "title": "1 pieces 10 kg" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 199.38, "gross_total": 199.38, "base_fare": 99, "tax": 100.38, "sell": { "currency": "EUR", "total": 199.38, "base_fare": 99, "tax": 100.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTk5LjM4LCJiYXNlX2ZhcmUiOjk5LCJ0YXgiOjEwMC4zOH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE5OS4zOCwiYmFzZV9mYXJlIjo5OSwidGF4IjoxMDAuMzgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTk5LjM4LCJiYXNlX2ZhcmUiOjk5LCJ0YXgiOjEwMC4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 199.38, "base_fare": 99, "tax": 100.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "99.00", "tax": "100.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 199.38, "base_fare": 99, "tax": 100.38, "gross": { "base_fare": "99.00", "tax": "100.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE5OS4zOCIsImJhc2VfZmFyZSI6Ijk5LjAwIiwidGF4IjoiMTAwLjM4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiOTkuMDAiLCJ0YXgiOiIxMDAuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxOTkuMzgiLCJiYXNlX2ZhcmUiOiI5OS4wMCIsInRheCI6IjEwMC4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6Ijk5LjAwIiwidGF4IjoiMTAwLjM4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTk5LjM4IiwiYmFzZV9mYXJlIjoiOTkuMDAiLCJ0YXgiOiIxMDAuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MTk5LjM4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 199.38, "filter": { "id": "F1MS00008-10", "price": 199.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "CLASSIC", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:50:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301150lis202607301350823lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-11", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-11", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT16H45M", "transit_time": "PT16H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p15", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T20:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T22:05:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32N", "name": "Airbus A320-212", "picture": "32N.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "booking_class": { "cabin_class": "Classic", "cabin_code": "CLASSIC", "booking_code": "CLASSIC", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T14:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T16:30:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H40M", "distance": 499, "lay_over": "PT16H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "E90", "name": "EMBRAER 190", "picture": "E90.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "booking_class": { "cabin_class": "Classic", "cabin_code": "CLASSIC", "booking_code": "CLASSIC", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 216.38, "gross_total": 216.38, "base_fare": 110, "tax": 106.38, "sell": { "currency": "EUR", "total": 216.38, "base_fare": 110, "tax": 106.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjE2LjM4LCJiYXNlX2ZhcmUiOjExMCwidGF4IjoxMDYuMzh9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyMTYuMzgsImJhc2VfZmFyZSI6MTEwLCJ0YXgiOjEwNi4zOCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyMTYuMzgsImJhc2VfZmFyZSI6MTEwLCJ0YXgiOjEwNi4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 216.38, "base_fare": 110, "tax": 106.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "110.00", "tax": "106.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 216.38, "base_fare": 110, "tax": 106.38, "gross": { "base_fare": "110.00", "tax": "106.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIxNi4zOCIsImJhc2VfZmFyZSI6IjExMC4wMCIsInRheCI6IjEwNi4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjExMC4wMCIsInRheCI6IjEwNi4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIxNi4zOCIsImJhc2VfZmFyZSI6IjExMC4wMCIsInRheCI6IjEwNi4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjExMC4wMCIsInRheCI6IjEwNi4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIxNi4zOCIsImJhc2VfZmFyZSI6IjExMC4wMCIsInRheCI6IjEwNi4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyMTYuMzgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 216.38, "filter": { "id": "F1MS00008-11", "price": 216.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32N", "aircraft_name": "Airbus A320-212", "cabin_class": "Classic", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T20:05:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-31T16:30:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607302005lis202607302205827lis202607311450rak2026073116301454", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-12", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-12", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H15M", "transit_time": "PT3H15M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p20", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:15:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T20:35:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1062" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1062" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT03H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 222.12, "gross_total": 222.12, "base_fare": 178, "tax": 44.12, "sell": { "currency": "EUR", "total": 222.12, "base_fare": 178, "tax": 44.12 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjIyLjEyLCJiYXNlX2ZhcmUiOjE3OCwidGF4Ijo0NC4xMn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIyMi4xMiwiYmFzZV9mYXJlIjoxNzgsInRheCI6NDQuMTIsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjIyLjEyLCJiYXNlX2ZhcmUiOjE3OCwidGF4Ijo0NC4xMn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 222.12, "base_fare": 178, "tax": 44.12, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "178.00", "tax": "44.12", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 222.12, "base_fare": 178, "tax": 44.12, "gross": { "base_fare": "178.00", "tax": "44.12", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIyMi4xMiIsImJhc2VfZmFyZSI6IjE3OC4wMCIsInRheCI6IjQ0LjEyIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTc4LjAwIiwidGF4IjoiNDQuMTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIyMjIuMTIiLCJiYXNlX2ZhcmUiOiIxNzguMDAiLCJ0YXgiOiI0NC4xMiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE3OC4wMCIsInRheCI6IjQ0LjEyIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMjIyLjEyIiwiYmFzZV9mYXJlIjoiMTc4LjAwIiwidGF4IjoiNDQuMTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MjIyLjEyLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 222.12, "filter": { "id": "F1MS00008-12", "price": 222.12, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "7M8", "aircraft_name": "Boeing 737Max", "cabin_class": "Standard", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:15:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301815mad2026073020351062mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-13", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-13", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT9H45M", "transit_time": "PT9H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p9", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T20:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T22:05:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32N", "name": "Airbus A320-212", "picture": "32N.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "booking_class": { "cabin_class": "Plus", "cabin_code": "PLUS", "booking_code": "PLUS", "meal_code": null, "seat_available": 5 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": 499, "lay_over": "PT09H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "Plus", "cabin_code": "PLUS", "booking_code": "PLUS", "meal_code": null, "seat_available": 5 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 229.38, "gross_total": 229.38, "base_fare": 129, "tax": 100.38, "sell": { "currency": "EUR", "total": 229.38, "base_fare": 129, "tax": 100.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjI5LjM4LCJiYXNlX2ZhcmUiOjEyOSwidGF4IjoxMDAuMzh9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyMjkuMzgsImJhc2VfZmFyZSI6MTI5LCJ0YXgiOjEwMC4zOCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyMjkuMzgsImJhc2VfZmFyZSI6MTI5LCJ0YXgiOjEwMC4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 229.38, "base_fare": 129, "tax": 100.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "129.00", "tax": "100.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 229.38, "base_fare": 129, "tax": 100.38, "gross": { "base_fare": "129.00", "tax": "100.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIyOS4zOCIsImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIyOS4zOCIsImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIyOS4zOCIsImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyMjkuMzgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 229.38, "filter": { "id": "F1MS00008-13", "price": 229.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32N", "aircraft_name": "Airbus A320-212", "cabin_class": "Plus", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T20:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607302005lis202607302205827lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-14", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-14", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H25M", "transit_time": "PT12H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p10", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T17:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T19:25:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "321", "name": "Airbus A321", "picture": "321.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "booking_class": { "cabin_class": "Plus", "cabin_code": "PLUS", "booking_code": "PLUS", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": 499, "lay_over": "PT12H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "Plus", "cabin_code": "PLUS", "booking_code": "PLUS", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 229.38, "gross_total": 229.38, "base_fare": 129, "tax": 100.38, "sell": { "currency": "EUR", "total": 229.38, "base_fare": 129, "tax": 100.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjI5LjM4LCJiYXNlX2ZhcmUiOjEyOSwidGF4IjoxMDAuMzh9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyMjkuMzgsImJhc2VfZmFyZSI6MTI5LCJ0YXgiOjEwMC4zOCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyMjkuMzgsImJhc2VfZmFyZSI6MTI5LCJ0YXgiOjEwMC4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 229.38, "base_fare": 129, "tax": 100.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "129.00", "tax": "100.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 229.38, "base_fare": 129, "tax": 100.38, "gross": { "base_fare": "129.00", "tax": "100.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIyOS4zOCIsImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIyOS4zOCIsImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIyOS4zOCIsImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyMjkuMzgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 229.38, "filter": { "id": "F1MS00008-14", "price": 229.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "321", "aircraft_name": "Airbus A321", "cabin_class": "Plus", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T17:25:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301725lis202607301925825lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-15", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-15", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT18H0M", "transit_time": "PT18H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "NDC:Travelport", "offerId": "TP_CPO0", "productId": "TPp13", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:50:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T13:50:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": null, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "823" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "823" }, "booking_class": { "cabin_class": "PLUS", "cabin_code": null, "booking_code": null, "meal_code": null, "seat_available": null }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 23, "unit": "kg", "title": "1 pieces 23 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": 10, "unit": "kg", "title": "1 pieces 10 kg" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": null, "lay_over": "PT18H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "PLUS", "cabin_code": null, "booking_code": null, "meal_code": null, "seat_available": null }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 23, "unit": "kg", "title": "1 pieces 23 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": 10, "unit": "kg", "title": "1 pieces 10 kg" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 229.38, "gross_total": 229.38, "base_fare": 129, "tax": 100.38, "sell": { "currency": "EUR", "total": 229.38, "base_fare": 129, "tax": 100.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjI5LjM4LCJiYXNlX2ZhcmUiOjEyOSwidGF4IjoxMDAuMzh9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyMjkuMzgsImJhc2VfZmFyZSI6MTI5LCJ0YXgiOjEwMC4zOCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyMjkuMzgsImJhc2VfZmFyZSI6MTI5LCJ0YXgiOjEwMC4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 229.38, "base_fare": 129, "tax": 100.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "129.00", "tax": "100.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 229.38, "base_fare": 129, "tax": 100.38, "gross": { "base_fare": "129.00", "tax": "100.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIyOS4zOCIsImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIyOS4zOCIsImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIyOS4zOCIsImJhc2VfZmFyZSI6IjEyOS4wMCIsInRheCI6IjEwMC4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyMjkuMzgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 229.38, "filter": { "id": "F1MS00008-15", "price": 229.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "PLUS", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:50:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301150lis202607301350823lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-16", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-16", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT16H45M", "transit_time": "PT16H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p16", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T20:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T22:05:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32N", "name": "Airbus A320-212", "picture": "32N.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "booking_class": { "cabin_class": "Plus", "cabin_code": "PLUS", "booking_code": "PLUS", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T14:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T16:30:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H40M", "distance": 499, "lay_over": "PT16H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "E90", "name": "EMBRAER 190", "picture": "E90.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "booking_class": { "cabin_class": "Plus", "cabin_code": "PLUS", "booking_code": "PLUS", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 246.38, "gross_total": 246.38, "base_fare": 140, "tax": 106.38, "sell": { "currency": "EUR", "total": 246.38, "base_fare": 140, "tax": 106.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjQ2LjM4LCJiYXNlX2ZhcmUiOjE0MCwidGF4IjoxMDYuMzh9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNDYuMzgsImJhc2VfZmFyZSI6MTQwLCJ0YXgiOjEwNi4zOCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNDYuMzgsImJhc2VfZmFyZSI6MTQwLCJ0YXgiOjEwNi4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 246.38, "base_fare": 140, "tax": 106.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "140.00", "tax": "106.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 246.38, "base_fare": 140, "tax": 106.38, "gross": { "base_fare": "140.00", "tax": "106.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI0Ni4zOCIsImJhc2VfZmFyZSI6IjE0MC4wMCIsInRheCI6IjEwNi4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE0MC4wMCIsInRheCI6IjEwNi4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI0Ni4zOCIsImJhc2VfZmFyZSI6IjE0MC4wMCIsInRheCI6IjEwNi4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE0MC4wMCIsInRheCI6IjEwNi4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI0Ni4zOCIsImJhc2VfZmFyZSI6IjE0MC4wMCIsInRheCI6IjEwNi4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyNDYuMzgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 246.38, "filter": { "id": "F1MS00008-16", "price": 246.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32N", "aircraft_name": "Airbus A320-212", "cabin_class": "Plus", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T20:05:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-31T16:30:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607302005lis202607302205827lis202607311450rak2026073116301454", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-17", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-17", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT19H25M", "transit_time": "PT19H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p24", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T17:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T19:25:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "321", "name": "Airbus A321", "picture": "321.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "booking_class": { "cabin_class": "Discount", "cabin_code": "DISCOUNT", "booking_code": "DISCOUNT", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T14:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T16:30:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H40M", "distance": 499, "lay_over": "PT19H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "E90", "name": "EMBRAER 190", "picture": "E90.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "booking_class": { "cabin_class": "Discount", "cabin_code": "DISCOUNT", "booking_code": "DISCOUNT", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 247.6, "gross_total": 247.6, "base_fare": 123, "tax": 124.6, "sell": { "currency": "EUR", "total": 247.6, "base_fare": 123, "tax": 124.6 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjQ3LjYsImJhc2VfZmFyZSI6MTIzLCJ0YXgiOjEyNC42fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjQ3LjYsImJhc2VfZmFyZSI6MTIzLCJ0YXgiOjEyNC42LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI0Ny42LCJiYXNlX2ZhcmUiOjEyMywidGF4IjoxMjQuNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 247.6, "base_fare": 123, "tax": 124.6, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "123.00", "tax": "124.60", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 247.6, "base_fare": 123, "tax": 124.6, "gross": { "base_fare": "123.00", "tax": "124.60", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI0Ny42MCIsImJhc2VfZmFyZSI6IjEyMy4wMCIsInRheCI6IjEyNC42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjEyMy4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI0Ny42MCIsImJhc2VfZmFyZSI6IjEyMy4wMCIsInRheCI6IjEyNC42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjEyMy4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI0Ny42MCIsImJhc2VfZmFyZSI6IjEyMy4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyNDcuNiwidGF4QnJlYWtkb3duIjp7IkJEIjp7ImFtb3VudCI6IjAuMDAifSwiVVQiOnsiYW1vdW50IjoiMC4wMCJ9LCJFNSI6eyJhbW91bnQiOiIwLjAwIn0sIllRIjp7ImFtb3VudCI6IjAuMDAifSwiWVIiOnsiYW1vdW50IjoiMC4wMCJ9LCJPdGhlciI6eyJhbW91bnQiOiIwLjAwIn0sInN1cHBsaWVyVGF4RGF0YSI6W119fSwiZGlzY291bnRfY29taXNzaW9uX3RpdGxlIjpudWxsLCJkaXNjb3VudF9jb21pc3Npb25fcmF0aW8iOjAsImR5bmFtaWNfbWFya3VwX3R5cGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3RpdGxlIjpudWxsLCJkeW5hbWljX21hcmt1cF9yYXRpbyI6bnVsbCwiYXBwbGljYWJsZV9jb21pc3Npb24iOm51bGwsImFwcGxpY2FibGVfZHluYW1pY19tYXJrdXAiOm51bGx9" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 247.6, "filter": { "id": "F1MS00008-17", "price": 247.6, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "321", "aircraft_name": "Airbus A321", "cabin_class": "Discount", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T17:25:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-31T16:30:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301725lis202607301925825lis202607311450rak2026073116301454", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-18", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-18", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT2H0M", "transit_time": "PT2H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p28", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T12:55:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T15:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "booking_class": { "cabin_class": "Eco Essential", "cabin_code": "EESSENTIAL", "booking_code": "EESSENTIAL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T17:05:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T18:10:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT02H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "413" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "413" }, "booking_class": { "cabin_class": "Eco Essential", "cabin_code": "EESSENTIAL", "booking_code": "EESSENTIAL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 251.06, "gross_total": 251.06, "base_fare": 151, "tax": 100.06, "sell": { "currency": "EUR", "total": 251.06, "base_fare": 151, "tax": 100.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjUxLjA2LCJiYXNlX2ZhcmUiOjE1MSwidGF4IjoxMDAuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNTEuMDYsImJhc2VfZmFyZSI6MTUxLCJ0YXgiOjEwMC4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNTEuMDYsImJhc2VfZmFyZSI6MTUxLCJ0YXgiOjEwMC4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 251.06, "base_fare": 151, "tax": 100.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "151.00", "tax": "100.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 251.06, "base_fare": 151, "tax": 100.06, "gross": { "base_fare": "151.00", "tax": "100.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS4wNiIsImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS4wNiIsImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS4wNiIsImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyNTEuMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 251.06, "filter": { "id": "F1MS00008-18", "price": 251.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Eco Essential", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T12:55:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-30T18:10:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301255cmn202607301505955cmn202607301705rak202607301810413", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-19", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-19", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT2H20M", "transit_time": "PT2H20M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p29", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T20:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "booking_class": { "cabin_class": "Eco Essential", "cabin_code": "EESSENTIAL", "booking_code": "EESSENTIAL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T22:35:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT02H20M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "booking_class": { "cabin_class": "Eco Essential", "cabin_code": "EESSENTIAL", "booking_code": "EESSENTIAL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 251.06, "gross_total": 251.06, "base_fare": 151, "tax": 100.06, "sell": { "currency": "EUR", "total": 251.06, "base_fare": 151, "tax": 100.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjUxLjA2LCJiYXNlX2ZhcmUiOjE1MSwidGF4IjoxMDAuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNTEuMDYsImJhc2VfZmFyZSI6MTUxLCJ0YXgiOjEwMC4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNTEuMDYsImJhc2VfZmFyZSI6MTUxLCJ0YXgiOjEwMC4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 251.06, "base_fare": 151, "tax": 100.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "151.00", "tax": "100.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 251.06, "base_fare": 151, "tax": 100.06, "gross": { "base_fare": "151.00", "tax": "100.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS4wNiIsImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS4wNiIsImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS4wNiIsImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyNTEuMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 251.06, "filter": { "id": "F1MS00008-19", "price": 251.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Eco Essential", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:05:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301805cmn202607302015951cmn202607302235rak202607302340403", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-20", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-20", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H40M", "transit_time": "PT3H40M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p30", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T20:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "booking_class": { "cabin_class": "Eco Essential", "cabin_code": "EESSENTIAL", "booking_code": "EESSENTIAL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T23:55:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T01:00:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT03H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "417" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "417" }, "booking_class": { "cabin_class": "Eco Essential", "cabin_code": "EESSENTIAL", "booking_code": "EESSENTIAL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 251.06, "gross_total": 251.06, "base_fare": 151, "tax": 100.06, "sell": { "currency": "EUR", "total": 251.06, "base_fare": 151, "tax": 100.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjUxLjA2LCJiYXNlX2ZhcmUiOjE1MSwidGF4IjoxMDAuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNTEuMDYsImJhc2VfZmFyZSI6MTUxLCJ0YXgiOjEwMC4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNTEuMDYsImJhc2VfZmFyZSI6MTUxLCJ0YXgiOjEwMC4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 251.06, "base_fare": 151, "tax": 100.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "151.00", "tax": "100.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 251.06, "base_fare": 151, "tax": 100.06, "gross": { "base_fare": "151.00", "tax": "100.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS4wNiIsImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS4wNiIsImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS4wNiIsImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyNTEuMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 251.06, "filter": { "id": "F1MS00008-20", "price": 251.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Eco Essential", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:05:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T01:00:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301805cmn202607302015951cmn202607302355rak202607310100417", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-21", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-21", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT7H30M", "transit_time": "PT7H30M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p31", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T12:55:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T15:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "booking_class": { "cabin_class": "Eco Essential", "cabin_code": "EESSENTIAL", "booking_code": "EESSENTIAL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T22:35:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT07H30M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "booking_class": { "cabin_class": "Eco Essential", "cabin_code": "EESSENTIAL", "booking_code": "EESSENTIAL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 251.06, "gross_total": 251.06, "base_fare": 151, "tax": 100.06, "sell": { "currency": "EUR", "total": 251.06, "base_fare": 151, "tax": 100.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjUxLjA2LCJiYXNlX2ZhcmUiOjE1MSwidGF4IjoxMDAuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNTEuMDYsImJhc2VfZmFyZSI6MTUxLCJ0YXgiOjEwMC4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNTEuMDYsImJhc2VfZmFyZSI6MTUxLCJ0YXgiOjEwMC4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 251.06, "base_fare": 151, "tax": 100.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "151.00", "tax": "100.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 251.06, "base_fare": 151, "tax": 100.06, "gross": { "base_fare": "151.00", "tax": "100.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS4wNiIsImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS4wNiIsImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS4wNiIsImJhc2VfZmFyZSI6IjE1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyNTEuMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 251.06, "filter": { "id": "F1MS00008-21", "price": 251.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Eco Essential", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T12:55:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301255cmn202607301505955cmn202607302235rak202607302340403", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-22", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-22", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT18H25M", "transit_time": "PT18H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o7", "productId": "p48", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T14:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T16:50:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "674" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "674" }, "booking_class": { "cabin_class": "Optima", "cabin_code": "OPTIMA", "booking_code": "OPTIMA", "meal_code": null, "seat_available": 8 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT18H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Optima", "cabin_code": "OPTIMA", "booking_code": "OPTIMA", "meal_code": null, "seat_available": 8 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 251.81, "gross_total": 251.81, "base_fare": 204, "tax": 47.81, "sell": { "currency": "EUR", "total": 251.81, "base_fare": 204, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjUxLjgxLCJiYXNlX2ZhcmUiOjIwNCwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI1MS44MSwiYmFzZV9mYXJlIjoyMDQsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjUxLjgxLCJiYXNlX2ZhcmUiOjIwNCwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 251.81, "base_fare": 204, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "204.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 251.81, "base_fare": 204, "tax": 47.81, "gross": { "base_fare": "204.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS44MSIsImJhc2VfZmFyZSI6IjIwNC4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjA0LjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIyNTEuODEiLCJiYXNlX2ZhcmUiOiIyMDQuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjIwNC4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMjUxLjgxIiwiYmFzZV9mYXJlIjoiMjA0LjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MjUxLjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 251.81, "filter": { "id": "F1MS00008-22", "price": 251.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Optima", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T14:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301425mad202607301650674mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-23", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-23", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT22H25M", "transit_time": "PT22H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o7", "productId": "p49", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T10:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T12:50:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "672" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "672" }, "booking_class": { "cabin_class": "Optima", "cabin_code": "OPTIMA", "booking_code": "OPTIMA", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT22H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Optima", "cabin_code": "OPTIMA", "booking_code": "OPTIMA", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 251.81, "gross_total": 251.81, "base_fare": 204, "tax": 47.81, "sell": { "currency": "EUR", "total": 251.81, "base_fare": 204, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjUxLjgxLCJiYXNlX2ZhcmUiOjIwNCwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI1MS44MSwiYmFzZV9mYXJlIjoyMDQsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjUxLjgxLCJiYXNlX2ZhcmUiOjIwNCwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 251.81, "base_fare": 204, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "204.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 251.81, "base_fare": 204, "tax": 47.81, "gross": { "base_fare": "204.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1MS44MSIsImJhc2VfZmFyZSI6IjIwNC4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjA0LjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIyNTEuODEiLCJiYXNlX2ZhcmUiOiIyMDQuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjIwNC4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMjUxLjgxIiwiYmFzZV9mYXJlIjoiMjA0LjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MjUxLjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 251.81, "filter": { "id": "F1MS00008-23", "price": 251.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Optima", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T10:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301025mad202607301250672mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-24", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-24", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H15M", "transit_time": "PT3H15M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p21", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:15:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T20:35:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1062" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1062" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT03H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 258.27, "gross_total": 258.27, "base_fare": 213, "tax": 45.27, "sell": { "currency": "EUR", "total": 258.27, "base_fare": 213, "tax": 45.27 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjU4LjI3LCJiYXNlX2ZhcmUiOjIxMywidGF4Ijo0NS4yN30sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI1OC4yNywiYmFzZV9mYXJlIjoyMTMsInRheCI6NDUuMjcsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjU4LjI3LCJiYXNlX2ZhcmUiOjIxMywidGF4Ijo0NS4yN319", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 258.27, "base_fare": 213, "tax": 45.27, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "213.00", "tax": "45.27", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 258.27, "base_fare": 213, "tax": 45.27, "gross": { "base_fare": "213.00", "tax": "45.27", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI1OC4yNyIsImJhc2VfZmFyZSI6IjIxMy4wMCIsInRheCI6IjQ1LjI3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEzLjAwIiwidGF4IjoiNDUuMjciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIyNTguMjciLCJiYXNlX2ZhcmUiOiIyMTMuMDAiLCJ0YXgiOiI0NS4yNyIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjIxMy4wMCIsInRheCI6IjQ1LjI3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMjU4LjI3IiwiYmFzZV9mYXJlIjoiMjEzLjAwIiwidGF4IjoiNDUuMjciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MjU4LjI3LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 258.27, "filter": { "id": "F1MS00008-24", "price": 258.27, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "7M8", "aircraft_name": "Boeing 737Max", "cabin_class": "Flex", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:15:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301815mad2026073020351062mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-25", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-25", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT2H0M", "transit_time": "PT2H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p32", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T12:55:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T15:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "booking_class": { "cabin_class": "Eco Classic", "cabin_code": "ECLASSIC", "booking_code": "ECLASSIC", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T17:05:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T18:10:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT02H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "413" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "413" }, "booking_class": { "cabin_class": "Eco Classic", "cabin_code": "ECLASSIC", "booking_code": "ECLASSIC", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 276.06, "gross_total": 276.06, "base_fare": 176, "tax": 100.06, "sell": { "currency": "EUR", "total": 276.06, "base_fare": 176, "tax": 100.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2LjA2LCJiYXNlX2ZhcmUiOjE3NiwidGF4IjoxMDAuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNzYuMDYsImJhc2VfZmFyZSI6MTc2LCJ0YXgiOjEwMC4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNzYuMDYsImJhc2VfZmFyZSI6MTc2LCJ0YXgiOjEwMC4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 276.06, "base_fare": 176, "tax": 100.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "176.00", "tax": "100.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 276.06, "base_fare": 176, "tax": 100.06, "gross": { "base_fare": "176.00", "tax": "100.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3Ni4wNiIsImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3Ni4wNiIsImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3Ni4wNiIsImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyNzYuMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 276.06, "filter": { "id": "F1MS00008-25", "price": 276.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Eco Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T12:55:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-30T18:10:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301255cmn202607301505955cmn202607301705rak202607301810413", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-26", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-26", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT2H20M", "transit_time": "PT2H20M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p33", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T20:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "booking_class": { "cabin_class": "Eco Classic", "cabin_code": "ECLASSIC", "booking_code": "ECLASSIC", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T22:35:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT02H20M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "booking_class": { "cabin_class": "Eco Classic", "cabin_code": "ECLASSIC", "booking_code": "ECLASSIC", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 276.06, "gross_total": 276.06, "base_fare": 176, "tax": 100.06, "sell": { "currency": "EUR", "total": 276.06, "base_fare": 176, "tax": 100.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2LjA2LCJiYXNlX2ZhcmUiOjE3NiwidGF4IjoxMDAuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNzYuMDYsImJhc2VfZmFyZSI6MTc2LCJ0YXgiOjEwMC4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNzYuMDYsImJhc2VfZmFyZSI6MTc2LCJ0YXgiOjEwMC4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 276.06, "base_fare": 176, "tax": 100.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "176.00", "tax": "100.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 276.06, "base_fare": 176, "tax": 100.06, "gross": { "base_fare": "176.00", "tax": "100.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3Ni4wNiIsImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3Ni4wNiIsImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3Ni4wNiIsImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyNzYuMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 276.06, "filter": { "id": "F1MS00008-26", "price": 276.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Eco Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:05:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301805cmn202607302015951cmn202607302235rak202607302340403", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-27", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-27", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H40M", "transit_time": "PT3H40M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p34", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T20:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "booking_class": { "cabin_class": "Eco Classic", "cabin_code": "ECLASSIC", "booking_code": "ECLASSIC", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T23:55:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T01:00:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT03H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "417" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "417" }, "booking_class": { "cabin_class": "Eco Classic", "cabin_code": "ECLASSIC", "booking_code": "ECLASSIC", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 276.06, "gross_total": 276.06, "base_fare": 176, "tax": 100.06, "sell": { "currency": "EUR", "total": 276.06, "base_fare": 176, "tax": 100.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2LjA2LCJiYXNlX2ZhcmUiOjE3NiwidGF4IjoxMDAuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNzYuMDYsImJhc2VfZmFyZSI6MTc2LCJ0YXgiOjEwMC4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNzYuMDYsImJhc2VfZmFyZSI6MTc2LCJ0YXgiOjEwMC4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 276.06, "base_fare": 176, "tax": 100.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "176.00", "tax": "100.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 276.06, "base_fare": 176, "tax": 100.06, "gross": { "base_fare": "176.00", "tax": "100.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3Ni4wNiIsImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3Ni4wNiIsImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3Ni4wNiIsImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyNzYuMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 276.06, "filter": { "id": "F1MS00008-27", "price": 276.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Eco Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:05:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T01:00:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301805cmn202607302015951cmn202607302355rak202607310100417", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-28", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-28", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT7H30M", "transit_time": "PT7H30M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p35", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T12:55:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T15:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "booking_class": { "cabin_class": "Eco Classic", "cabin_code": "ECLASSIC", "booking_code": "ECLASSIC", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T22:35:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT07H30M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "booking_class": { "cabin_class": "Eco Classic", "cabin_code": "ECLASSIC", "booking_code": "ECLASSIC", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 276.06, "gross_total": 276.06, "base_fare": 176, "tax": 100.06, "sell": { "currency": "EUR", "total": 276.06, "base_fare": 176, "tax": 100.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2LjA2LCJiYXNlX2ZhcmUiOjE3NiwidGF4IjoxMDAuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNzYuMDYsImJhc2VfZmFyZSI6MTc2LCJ0YXgiOjEwMC4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoyNzYuMDYsImJhc2VfZmFyZSI6MTc2LCJ0YXgiOjEwMC4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 276.06, "base_fare": 176, "tax": 100.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "176.00", "tax": "100.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 276.06, "base_fare": 176, "tax": 100.06, "gross": { "base_fare": "176.00", "tax": "100.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3Ni4wNiIsImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3Ni4wNiIsImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3Ni4wNiIsImJhc2VfZmFyZSI6IjE3Ni4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyNzYuMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 276.06, "filter": { "id": "F1MS00008-28", "price": 276.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Eco Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T12:55:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301255cmn202607301505955cmn202607302235rak202607302340403", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-29", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-29", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT19H25M", "transit_time": "PT19H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p25", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T17:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T19:25:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "321", "name": "Airbus A321", "picture": "321.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "booking_class": { "cabin_class": "Classic", "cabin_code": "CLASSIC", "booking_code": "CLASSIC", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T14:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T16:30:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H40M", "distance": 499, "lay_over": "PT19H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "E90", "name": "EMBRAER 190", "picture": "E90.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "booking_class": { "cabin_class": "Classic", "cabin_code": "CLASSIC", "booking_code": "CLASSIC", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 287.6, "gross_total": 287.6, "base_fare": 163, "tax": 124.6, "sell": { "currency": "EUR", "total": 287.6, "base_fare": 163, "tax": 124.6 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjg3LjYsImJhc2VfZmFyZSI6MTYzLCJ0YXgiOjEyNC42fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjg3LjYsImJhc2VfZmFyZSI6MTYzLCJ0YXgiOjEyNC42LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI4Ny42LCJiYXNlX2ZhcmUiOjE2MywidGF4IjoxMjQuNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 287.6, "base_fare": 163, "tax": 124.6, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "163.00", "tax": "124.60", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 287.6, "base_fare": 163, "tax": 124.6, "gross": { "base_fare": "163.00", "tax": "124.60", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI4Ny42MCIsImJhc2VfZmFyZSI6IjE2My4wMCIsInRheCI6IjEyNC42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE2My4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI4Ny42MCIsImJhc2VfZmFyZSI6IjE2My4wMCIsInRheCI6IjEyNC42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE2My4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI4Ny42MCIsImJhc2VfZmFyZSI6IjE2My4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoyODcuNiwidGF4QnJlYWtkb3duIjp7IkJEIjp7ImFtb3VudCI6IjAuMDAifSwiVVQiOnsiYW1vdW50IjoiMC4wMCJ9LCJFNSI6eyJhbW91bnQiOiIwLjAwIn0sIllRIjp7ImFtb3VudCI6IjAuMDAifSwiWVIiOnsiYW1vdW50IjoiMC4wMCJ9LCJPdGhlciI6eyJhbW91bnQiOiIwLjAwIn0sInN1cHBsaWVyVGF4RGF0YSI6W119fSwiZGlzY291bnRfY29taXNzaW9uX3RpdGxlIjpudWxsLCJkaXNjb3VudF9jb21pc3Npb25fcmF0aW8iOjAsImR5bmFtaWNfbWFya3VwX3R5cGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3RpdGxlIjpudWxsLCJkeW5hbWljX21hcmt1cF9yYXRpbyI6bnVsbCwiYXBwbGljYWJsZV9jb21pc3Npb24iOm51bGwsImFwcGxpY2FibGVfZHluYW1pY19tYXJrdXAiOm51bGx9" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 287.6, "filter": { "id": "F1MS00008-29", "price": 287.6, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "321", "aircraft_name": "Airbus A321", "cabin_class": "Classic", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T17:25:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-31T16:30:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301725lis202607301925825lis202607311450rak2026073116301454", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-30", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-30", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT13H45M", "transit_time": "PT13H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o8", "productId": "p58", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T19:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T21:30:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "676" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "676" }, "booking_class": { "cabin_class": "Optima", "cabin_code": "OPTIMA", "booking_code": "OPTIMA", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT13H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Optima", "cabin_code": "OPTIMA", "booking_code": "OPTIMA", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 289.81, "gross_total": 289.81, "base_fare": 242, "tax": 47.81, "sell": { "currency": "EUR", "total": 289.81, "base_fare": 242, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjg5LjgxLCJiYXNlX2ZhcmUiOjI0MiwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI4OS44MSwiYmFzZV9mYXJlIjoyNDIsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjg5LjgxLCJiYXNlX2ZhcmUiOjI0MiwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 289.81, "base_fare": 242, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "242.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 289.81, "base_fare": 242, "tax": 47.81, "gross": { "base_fare": "242.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI4OS44MSIsImJhc2VfZmFyZSI6IjI0Mi4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjQyLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIyODkuODEiLCJiYXNlX2ZhcmUiOiIyNDIuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI0Mi4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMjg5LjgxIiwiYmFzZV9mYXJlIjoiMjQyLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6Mjg5LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 289.81, "filter": { "id": "F1MS00008-30", "price": 289.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Optima", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T19:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301905mad202607302130676mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-31", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-31", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT10H35M", "transit_time": "PT10H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o9", "productId": "p63", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T13:15:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1066" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1066" }, "booking_class": { "cabin_class": "Lite", "cabin_code": "LITE", "booking_code": "LITE", "meal_code": null, "seat_available": 7 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": null, "unit": null, "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT10H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Lite", "cabin_code": "LITE", "booking_code": "LITE", "meal_code": null, "seat_available": 7 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": null, "unit": null, "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 296.49, "gross_total": 296.49, "base_fare": 250, "tax": 46.49, "sell": { "currency": "EUR", "total": 296.49, "base_fare": 250, "tax": 46.49 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjk2LjQ5LCJiYXNlX2ZhcmUiOjI1MCwidGF4Ijo0Ni40OX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI5Ni40OSwiYmFzZV9mYXJlIjoyNTAsInRheCI6NDYuNDksImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjk2LjQ5LCJiYXNlX2ZhcmUiOjI1MCwidGF4Ijo0Ni40OX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 296.49, "base_fare": 250, "tax": 46.49, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "250.00", "tax": "46.49", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 296.49, "base_fare": 250, "tax": 46.49, "gross": { "base_fare": "250.00", "tax": "46.49", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI5Ni40OSIsImJhc2VfZmFyZSI6IjI1MC4wMCIsInRheCI6IjQ2LjQ5IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjUwLjAwIiwidGF4IjoiNDYuNDkiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIyOTYuNDkiLCJiYXNlX2ZhcmUiOiIyNTAuMDAiLCJ0YXgiOiI0Ni40OSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI1MC4wMCIsInRheCI6IjQ2LjQ5IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMjk2LjQ5IiwiYmFzZV9mYXJlIjoiMjUwLjAwIiwidGF4IjoiNDYuNDkiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6Mjk2LjQ5LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 296.49, "filter": { "id": "F1MS00008-31", "price": 296.49, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Lite", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:05:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301105mad2026073013151066mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-32", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-32", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT18H25M", "transit_time": "PT18H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o7", "productId": "p50", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T14:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T16:50:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "674" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "674" }, "booking_class": { "cabin_class": "Comfort", "cabin_code": "COMFORT", "booking_code": "COMFORT", "meal_code": null, "seat_available": 8 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT18H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Comfort", "cabin_code": "COMFORT", "booking_code": "COMFORT", "meal_code": null, "seat_available": 8 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 304.81, "gross_total": 304.81, "base_fare": 257, "tax": 47.81, "sell": { "currency": "EUR", "total": 304.81, "base_fare": 257, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzA0LjgxLCJiYXNlX2ZhcmUiOjI1NywidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjMwNC44MSwiYmFzZV9mYXJlIjoyNTcsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzA0LjgxLCJiYXNlX2ZhcmUiOjI1NywidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 304.81, "base_fare": 257, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "257.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 304.81, "base_fare": 257, "tax": 47.81, "gross": { "base_fare": "257.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjMwNC44MSIsImJhc2VfZmFyZSI6IjI1Ny4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjU3LjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzMDQuODEiLCJiYXNlX2ZhcmUiOiIyNTcuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI1Ny4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzA0LjgxIiwiYmFzZV9mYXJlIjoiMjU3LjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzA0LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 304.81, "filter": { "id": "F1MS00008-32", "price": 304.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Comfort", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T14:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301425mad202607301650674mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-33", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-33", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT22H25M", "transit_time": "PT22H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o7", "productId": "p51", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T10:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T12:50:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "672" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "672" }, "booking_class": { "cabin_class": "Comfort", "cabin_code": "COMFORT", "booking_code": "COMFORT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT22H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Comfort", "cabin_code": "COMFORT", "booking_code": "COMFORT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 304.81, "gross_total": 304.81, "base_fare": 257, "tax": 47.81, "sell": { "currency": "EUR", "total": 304.81, "base_fare": 257, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzA0LjgxLCJiYXNlX2ZhcmUiOjI1NywidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjMwNC44MSwiYmFzZV9mYXJlIjoyNTcsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzA0LjgxLCJiYXNlX2ZhcmUiOjI1NywidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 304.81, "base_fare": 257, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "257.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 304.81, "base_fare": 257, "tax": 47.81, "gross": { "base_fare": "257.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjMwNC44MSIsImJhc2VfZmFyZSI6IjI1Ny4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjU3LjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzMDQuODEiLCJiYXNlX2ZhcmUiOiIyNTcuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI1Ny4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzA0LjgxIiwiYmFzZV9mYXJlIjoiMjU3LjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzA0LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 304.81, "filter": { "id": "F1MS00008-33", "price": 304.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Comfort", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T10:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301025mad202607301250672mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-34", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-34", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT19H25M", "transit_time": "PT19H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p26", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T17:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T19:25:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "321", "name": "Airbus A321", "picture": "321.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "booking_class": { "cabin_class": "Plus", "cabin_code": "PLUS", "booking_code": "PLUS", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T14:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T16:30:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H40M", "distance": 499, "lay_over": "PT19H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "E90", "name": "EMBRAER 190", "picture": "E90.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "booking_class": { "cabin_class": "Plus", "cabin_code": "PLUS", "booking_code": "PLUS", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 317.6, "gross_total": 317.6, "base_fare": 193, "tax": 124.6, "sell": { "currency": "EUR", "total": 317.6, "base_fare": 193, "tax": 124.6 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzE3LjYsImJhc2VfZmFyZSI6MTkzLCJ0YXgiOjEyNC42fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzE3LjYsImJhc2VfZmFyZSI6MTkzLCJ0YXgiOjEyNC42LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjMxNy42LCJiYXNlX2ZhcmUiOjE5MywidGF4IjoxMjQuNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 317.6, "base_fare": 193, "tax": 124.6, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "193.00", "tax": "124.60", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 317.6, "base_fare": 193, "tax": 124.6, "gross": { "base_fare": "193.00", "tax": "124.60", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjMxNy42MCIsImJhc2VfZmFyZSI6IjE5My4wMCIsInRheCI6IjEyNC42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE5My4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjMxNy42MCIsImJhc2VfZmFyZSI6IjE5My4wMCIsInRheCI6IjEyNC42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjE5My4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjMxNy42MCIsImJhc2VfZmFyZSI6IjE5My4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjozMTcuNiwidGF4QnJlYWtkb3duIjp7IkJEIjp7ImFtb3VudCI6IjAuMDAifSwiVVQiOnsiYW1vdW50IjoiMC4wMCJ9LCJFNSI6eyJhbW91bnQiOiIwLjAwIn0sIllRIjp7ImFtb3VudCI6IjAuMDAifSwiWVIiOnsiYW1vdW50IjoiMC4wMCJ9LCJPdGhlciI6eyJhbW91bnQiOiIwLjAwIn0sInN1cHBsaWVyVGF4RGF0YSI6W119fSwiZGlzY291bnRfY29taXNzaW9uX3RpdGxlIjpudWxsLCJkaXNjb3VudF9jb21pc3Npb25fcmF0aW8iOjAsImR5bmFtaWNfbWFya3VwX3R5cGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3RpdGxlIjpudWxsLCJkeW5hbWljX21hcmt1cF9yYXRpbyI6bnVsbCwiYXBwbGljYWJsZV9jb21pc3Npb24iOm51bGwsImFwcGxpY2FibGVfZHluYW1pY19tYXJrdXAiOm51bGx9" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 317.6, "filter": { "id": "F1MS00008-34", "price": 317.6, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "321", "aircraft_name": "Airbus A321", "cabin_class": "Plus", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T17:25:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-31T16:30:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301725lis202607301925825lis202607311450rak2026073116301454", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-35", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-35", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT10H35M", "transit_time": "PT10H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o9", "productId": "p64", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T13:15:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1066" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1066" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 7 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT10H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 7 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 327.48, "gross_total": 327.48, "base_fare": 280, "tax": 47.48, "sell": { "currency": "EUR", "total": 327.48, "base_fare": 280, "tax": 47.48 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzI3LjQ4LCJiYXNlX2ZhcmUiOjI4MCwidGF4Ijo0Ny40OH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjMyNy40OCwiYmFzZV9mYXJlIjoyODAsInRheCI6NDcuNDgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzI3LjQ4LCJiYXNlX2ZhcmUiOjI4MCwidGF4Ijo0Ny40OH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 327.48, "base_fare": 280, "tax": 47.48, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "280.00", "tax": "47.48", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 327.48, "base_fare": 280, "tax": 47.48, "gross": { "base_fare": "280.00", "tax": "47.48", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjMyNy40OCIsImJhc2VfZmFyZSI6IjI4MC4wMCIsInRheCI6IjQ3LjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjgwLjAwIiwidGF4IjoiNDcuNDgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzMjcuNDgiLCJiYXNlX2ZhcmUiOiIyODAuMDAiLCJ0YXgiOiI0Ny40OCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI4MC4wMCIsInRheCI6IjQ3LjQ4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzI3LjQ4IiwiYmFzZV9mYXJlIjoiMjgwLjAwIiwidGF4IjoiNDcuNDgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzI3LjQ4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 327.48, "filter": { "id": "F1MS00008-35", "price": 327.48, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Standard", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:05:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301105mad2026073013151066mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-36", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-36", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1H20M", "transit_time": "PT1H20M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o10", "productId": "p68", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T16:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "BCN", "arrival_time": "2026-07-30T18:30:00", "destination_terminal": "1", "destination_airport": { "name": "Barcelona-El Prat Airport", "city": "Barcelona", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT1H45M", "distance": 465, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "321", "name": "Airbus A321", "picture": "321.png" }, "operating": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "6333" }, "marketing": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "6333" }, "booking_class": { "cabin_class": "Optima", "cabin_code": "OPT", "booking_code": "OPT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 25, "unit": "kg", "title": "25 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "BCN", "departure_time": "2026-07-30T19:50:00", "origin_terminal": "1", "origin_airport": { "name": "Barcelona-El Prat Airport", "city": "Barcelona", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-30T21:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H35M", "distance": 873, "lay_over": "PT01H20M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "7334" }, "marketing": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "7334" }, "booking_class": { "cabin_class": "Optima", "cabin_code": "OPT", "booking_code": "OPT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 25, "unit": "kg", "title": "25 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 334.9, "gross_total": 334.9, "base_fare": 285, "tax": 49.9, "sell": { "currency": "EUR", "total": 334.9, "base_fare": 285, "tax": 49.9 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzM0LjksImJhc2VfZmFyZSI6Mjg1LCJ0YXgiOjQ5Ljl9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozMzQuOSwiYmFzZV9mYXJlIjoyODUsInRheCI6NDkuOSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozMzQuOSwiYmFzZV9mYXJlIjoyODUsInRheCI6NDkuOX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 334.9, "base_fare": 285, "tax": 49.9, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "285.00", "tax": "49.90", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 334.9, "base_fare": 285, "tax": 49.9, "gross": { "base_fare": "285.00", "tax": "49.90", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjMzNC45MCIsImJhc2VfZmFyZSI6IjI4NS4wMCIsInRheCI6IjQ5LjkwIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjg1LjAwIiwidGF4IjoiNDkuOTAiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzMzQuOTAiLCJiYXNlX2ZhcmUiOiIyODUuMDAiLCJ0YXgiOiI0OS45MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI4NS4wMCIsInRheCI6IjQ5LjkwIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzM0LjkwIiwiYmFzZV9mYXJlIjoiMjg1LjAwIiwidGF4IjoiNDkuOTAiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzM0LjksInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 334.9, "filter": { "id": "F1MS00008-36", "price": 334.9, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "VY", "carrier_marketing": "VY", "aircraft": "321", "aircraft_name": "Airbus A321", "cabin_class": "Optima", "connecting_airport": [ "BCN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T16:45:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T21:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301645bcn2026073018306333bcn202607301950rak2026073021257334", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-37", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-37", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H0M", "transit_time": "PT8H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o11", "productId": "p70", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T12:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHT", "booking_code": "LIGHT", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T20:55:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T23:15:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 1312, "lay_over": "PT08H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHT", "booking_code": "LIGHT", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 337.52, "gross_total": 337.52, "base_fare": 263, "tax": 74.52, "sell": { "currency": "EUR", "total": 337.52, "base_fare": 263, "tax": 74.52 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzM3LjUyLCJiYXNlX2ZhcmUiOjI2MywidGF4Ijo3NC41Mn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjMzNy41MiwiYmFzZV9mYXJlIjoyNjMsInRheCI6NzQuNTIsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzM3LjUyLCJiYXNlX2ZhcmUiOjI2MywidGF4Ijo3NC41Mn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 337.52, "base_fare": 263, "tax": 74.52, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "263.00", "tax": "74.52", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 337.52, "base_fare": 263, "tax": 74.52, "gross": { "base_fare": "263.00", "tax": "74.52", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjMzNy41MiIsImJhc2VfZmFyZSI6IjI2My4wMCIsInRheCI6Ijc0LjUyIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjYzLjAwIiwidGF4IjoiNzQuNTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzMzcuNTIiLCJiYXNlX2ZhcmUiOiIyNjMuMDAiLCJ0YXgiOiI3NC41MiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI2My4wMCIsInRheCI6Ijc0LjUyIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzM3LjUyIiwiYmFzZV9mYXJlIjoiMjYzLjAwIiwidGF4IjoiNzQuNTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzM3LjUyLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 337.52, "filter": { "id": "F1MS00008-37", "price": 337.52, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Light", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:25:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301125cdg2026073012551331cdg202607302055rak2026073023151776", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-38", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-38", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT2H35M", "transit_time": "PT2H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o12", "productId": "p75", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T15:30:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "BCN", "arrival_time": "2026-07-30T17:15:00", "destination_terminal": "1", "destination_airport": { "name": "Barcelona-El Prat Airport", "city": "Barcelona", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT1H45M", "distance": 465, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "321", "name": "Airbus A321", "picture": "321.png" }, "operating": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "6341" }, "marketing": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "6341" }, "booking_class": { "cabin_class": "Optima", "cabin_code": "OPT", "booking_code": "OPT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 25, "unit": "kg", "title": "25 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "BCN", "departure_time": "2026-07-30T19:50:00", "origin_terminal": "1", "origin_airport": { "name": "Barcelona-El Prat Airport", "city": "Barcelona", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-30T21:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H35M", "distance": 873, "lay_over": "PT02H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "7334" }, "marketing": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "7334" }, "booking_class": { "cabin_class": "Optima", "cabin_code": "OPT", "booking_code": "OPT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 25, "unit": "kg", "title": "25 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 339.9, "gross_total": 339.9, "base_fare": 290, "tax": 49.9, "sell": { "currency": "EUR", "total": 339.9, "base_fare": 290, "tax": 49.9 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzM5LjksImJhc2VfZmFyZSI6MjkwLCJ0YXgiOjQ5Ljl9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozMzkuOSwiYmFzZV9mYXJlIjoyOTAsInRheCI6NDkuOSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozMzkuOSwiYmFzZV9mYXJlIjoyOTAsInRheCI6NDkuOX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 339.9, "base_fare": 290, "tax": 49.9, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "290.00", "tax": "49.90", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 339.9, "base_fare": 290, "tax": 49.9, "gross": { "base_fare": "290.00", "tax": "49.90", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjMzOS45MCIsImJhc2VfZmFyZSI6IjI5MC4wMCIsInRheCI6IjQ5LjkwIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjkwLjAwIiwidGF4IjoiNDkuOTAiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzMzkuOTAiLCJiYXNlX2ZhcmUiOiIyOTAuMDAiLCJ0YXgiOiI0OS45MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI5MC4wMCIsInRheCI6IjQ5LjkwIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzM5LjkwIiwiYmFzZV9mYXJlIjoiMjkwLjAwIiwidGF4IjoiNDkuOTAiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzM5LjksInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 339.9, "filter": { "id": "F1MS00008-38", "price": 339.9, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "VY", "carrier_marketing": "VY", "aircraft": "321", "aircraft_name": "Airbus A321", "cabin_class": "Optima", "connecting_airport": [ "BCN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T15:30:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T21:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301530bcn2026073017156341bcn202607301950rak2026073021257334", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-39", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-39", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H5M", "transit_time": "PT8H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o13", "productId": "p77", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T10:00:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "BCN", "arrival_time": "2026-07-30T11:45:00", "destination_terminal": "1", "destination_airport": { "name": "Barcelona-El Prat Airport", "city": "Barcelona", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT1H45M", "distance": 465, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32Q", "name": "Airbus A321 NEO", "picture": "32Q.png" }, "operating": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "6331" }, "marketing": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "6331" }, "booking_class": { "cabin_class": "Optima", "cabin_code": "OPT", "booking_code": "OPT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 25, "unit": "kg", "title": "25 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "BCN", "departure_time": "2026-07-30T19:50:00", "origin_terminal": "1", "origin_airport": { "name": "Barcelona-El Prat Airport", "city": "Barcelona", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-30T21:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H35M", "distance": 873, "lay_over": "PT08H05M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "7334" }, "marketing": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "7334" }, "booking_class": { "cabin_class": "Optima", "cabin_code": "OPT", "booking_code": "OPT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 25, "unit": "kg", "title": "25 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 344.9, "gross_total": 344.9, "base_fare": 295, "tax": 49.9, "sell": { "currency": "EUR", "total": 344.9, "base_fare": 295, "tax": 49.9 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzQ0LjksImJhc2VfZmFyZSI6Mjk1LCJ0YXgiOjQ5Ljl9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozNDQuOSwiYmFzZV9mYXJlIjoyOTUsInRheCI6NDkuOSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozNDQuOSwiYmFzZV9mYXJlIjoyOTUsInRheCI6NDkuOX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 344.9, "base_fare": 295, "tax": 49.9, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "295.00", "tax": "49.90", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 344.9, "base_fare": 295, "tax": 49.9, "gross": { "base_fare": "295.00", "tax": "49.90", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM0NC45MCIsImJhc2VfZmFyZSI6IjI5NS4wMCIsInRheCI6IjQ5LjkwIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjk1LjAwIiwidGF4IjoiNDkuOTAiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzNDQuOTAiLCJiYXNlX2ZhcmUiOiIyOTUuMDAiLCJ0YXgiOiI0OS45MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI5NS4wMCIsInRheCI6IjQ5LjkwIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzQ0LjkwIiwiYmFzZV9mYXJlIjoiMjk1LjAwIiwidGF4IjoiNDkuOTAiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzQ0LjksInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 344.9, "filter": { "id": "F1MS00008-39", "price": 344.9, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "VY", "carrier_marketing": "VY", "aircraft": "32Q", "aircraft_name": "Airbus A321 NEO", "cabin_class": "Optima", "connecting_airport": [ "BCN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T10:00:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T21:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301000bcn2026073011456331bcn202607301950rak2026073021257334", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-40", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-40", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT2H0M", "transit_time": "PT2H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p36", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T12:55:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T15:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "booking_class": { "cabin_class": "Eco Flex Premium", "cabin_code": "EFLEX", "booking_code": "EFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T17:05:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T18:10:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT02H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "413" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "413" }, "booking_class": { "cabin_class": "Eco Flex Premium", "cabin_code": "EFLEX", "booking_code": "EFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 351.06, "gross_total": 351.06, "base_fare": 251, "tax": 100.06, "sell": { "currency": "EUR", "total": 351.06, "base_fare": 251, "tax": 100.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzUxLjA2LCJiYXNlX2ZhcmUiOjI1MSwidGF4IjoxMDAuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozNTEuMDYsImJhc2VfZmFyZSI6MjUxLCJ0YXgiOjEwMC4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozNTEuMDYsImJhc2VfZmFyZSI6MjUxLCJ0YXgiOjEwMC4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 351.06, "base_fare": 251, "tax": 100.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "251.00", "tax": "100.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 351.06, "base_fare": 251, "tax": 100.06, "gross": { "base_fare": "251.00", "tax": "100.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1MS4wNiIsImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1MS4wNiIsImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1MS4wNiIsImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjozNTEuMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 351.06, "filter": { "id": "F1MS00008-40", "price": 351.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Eco Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T12:55:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-30T18:10:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301255cmn202607301505955cmn202607301705rak202607301810413", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-41", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-41", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT2H20M", "transit_time": "PT2H20M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p37", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T20:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "booking_class": { "cabin_class": "Eco Flex Premium", "cabin_code": "EFLEX", "booking_code": "EFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T22:35:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT02H20M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "booking_class": { "cabin_class": "Eco Flex Premium", "cabin_code": "EFLEX", "booking_code": "EFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 351.06, "gross_total": 351.06, "base_fare": 251, "tax": 100.06, "sell": { "currency": "EUR", "total": 351.06, "base_fare": 251, "tax": 100.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzUxLjA2LCJiYXNlX2ZhcmUiOjI1MSwidGF4IjoxMDAuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozNTEuMDYsImJhc2VfZmFyZSI6MjUxLCJ0YXgiOjEwMC4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozNTEuMDYsImJhc2VfZmFyZSI6MjUxLCJ0YXgiOjEwMC4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 351.06, "base_fare": 251, "tax": 100.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "251.00", "tax": "100.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 351.06, "base_fare": 251, "tax": 100.06, "gross": { "base_fare": "251.00", "tax": "100.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1MS4wNiIsImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1MS4wNiIsImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1MS4wNiIsImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjozNTEuMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 351.06, "filter": { "id": "F1MS00008-41", "price": 351.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Eco Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:05:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301805cmn202607302015951cmn202607302235rak202607302340403", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-42", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-42", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H40M", "transit_time": "PT3H40M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p38", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T20:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "booking_class": { "cabin_class": "Eco Flex Premium", "cabin_code": "EFLEX", "booking_code": "EFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T23:55:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T01:00:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT03H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "417" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "417" }, "booking_class": { "cabin_class": "Eco Flex Premium", "cabin_code": "EFLEX", "booking_code": "EFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 351.06, "gross_total": 351.06, "base_fare": 251, "tax": 100.06, "sell": { "currency": "EUR", "total": 351.06, "base_fare": 251, "tax": 100.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzUxLjA2LCJiYXNlX2ZhcmUiOjI1MSwidGF4IjoxMDAuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozNTEuMDYsImJhc2VfZmFyZSI6MjUxLCJ0YXgiOjEwMC4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozNTEuMDYsImJhc2VfZmFyZSI6MjUxLCJ0YXgiOjEwMC4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 351.06, "base_fare": 251, "tax": 100.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "251.00", "tax": "100.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 351.06, "base_fare": 251, "tax": 100.06, "gross": { "base_fare": "251.00", "tax": "100.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1MS4wNiIsImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1MS4wNiIsImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1MS4wNiIsImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjozNTEuMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 351.06, "filter": { "id": "F1MS00008-42", "price": 351.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Eco Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:05:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T01:00:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301805cmn202607302015951cmn202607302355rak202607310100417", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-43", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-43", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT7H30M", "transit_time": "PT7H30M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p39", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T12:55:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T15:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "booking_class": { "cabin_class": "Eco Flex Premium", "cabin_code": "EFLEX", "booking_code": "EFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T22:35:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT07H30M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "booking_class": { "cabin_class": "Eco Flex Premium", "cabin_code": "EFLEX", "booking_code": "EFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 351.06, "gross_total": 351.06, "base_fare": 251, "tax": 100.06, "sell": { "currency": "EUR", "total": 351.06, "base_fare": 251, "tax": 100.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzUxLjA2LCJiYXNlX2ZhcmUiOjI1MSwidGF4IjoxMDAuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozNTEuMDYsImJhc2VfZmFyZSI6MjUxLCJ0YXgiOjEwMC4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjozNTEuMDYsImJhc2VfZmFyZSI6MjUxLCJ0YXgiOjEwMC4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 351.06, "base_fare": 251, "tax": 100.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "251.00", "tax": "100.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 351.06, "base_fare": 251, "tax": 100.06, "gross": { "base_fare": "251.00", "tax": "100.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1MS4wNiIsImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1MS4wNiIsImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1MS4wNiIsImJhc2VfZmFyZSI6IjI1MS4wMCIsInRheCI6IjEwMC4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjozNTEuMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 351.06, "filter": { "id": "F1MS00008-43", "price": 351.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Eco Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T12:55:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301255cmn202607301505955cmn202607302235rak202607302340403", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-44", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-44", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT13H45M", "transit_time": "PT13H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o8", "productId": "p59", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T19:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T21:30:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "676" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "676" }, "booking_class": { "cabin_class": "Comfort", "cabin_code": "COMFORT", "booking_code": "COMFORT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT13H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Comfort", "cabin_code": "COMFORT", "booking_code": "COMFORT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 356.81, "gross_total": 356.81, "base_fare": 309, "tax": 47.81, "sell": { "currency": "EUR", "total": 356.81, "base_fare": 309, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzU2LjgxLCJiYXNlX2ZhcmUiOjMwOSwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjM1Ni44MSwiYmFzZV9mYXJlIjozMDksInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzU2LjgxLCJiYXNlX2ZhcmUiOjMwOSwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 356.81, "base_fare": 309, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "309.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 356.81, "base_fare": 309, "tax": 47.81, "gross": { "base_fare": "309.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1Ni44MSIsImJhc2VfZmFyZSI6IjMwOS4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzA5LjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzNTYuODEiLCJiYXNlX2ZhcmUiOiIzMDkuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMwOS4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzU2LjgxIiwiYmFzZV9mYXJlIjoiMzA5LjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzU2LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 356.81, "filter": { "id": "F1MS00008-44", "price": 356.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Comfort", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T19:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301905mad202607302130676mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-45", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-45", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT0H0M", "transit_time": "PT0H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o14", "productId": "p79", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T05:50:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T07:50:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "829" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "829" }, "booking_class": { "cabin_class": "Classic", "cabin_code": "CLASSIC", "booking_code": "CLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": 499, "lay_over": "PT1D00H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "Classic", "cabin_code": "CLASSIC", "booking_code": "CLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 357.6, "gross_total": 357.6, "base_fare": 233, "tax": 124.6, "sell": { "currency": "EUR", "total": 357.6, "base_fare": 233, "tax": 124.6 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzU3LjYsImJhc2VfZmFyZSI6MjMzLCJ0YXgiOjEyNC42fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzU3LjYsImJhc2VfZmFyZSI6MjMzLCJ0YXgiOjEyNC42LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjM1Ny42LCJiYXNlX2ZhcmUiOjIzMywidGF4IjoxMjQuNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 357.6, "base_fare": 233, "tax": 124.6, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "233.00", "tax": "124.60", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 357.6, "base_fare": 233, "tax": 124.6, "gross": { "base_fare": "233.00", "tax": "124.60", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1Ny42MCIsImJhc2VfZmFyZSI6IjIzMy4wMCIsInRheCI6IjEyNC42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjIzMy4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1Ny42MCIsImJhc2VfZmFyZSI6IjIzMy4wMCIsInRheCI6IjEyNC42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjIzMy4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM1Ny42MCIsImJhc2VfZmFyZSI6IjIzMy4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjozNTcuNiwidGF4QnJlYWtkb3duIjp7IkJEIjp7ImFtb3VudCI6IjAuMDAifSwiVVQiOnsiYW1vdW50IjoiMC4wMCJ9LCJFNSI6eyJhbW91bnQiOiIwLjAwIn0sIllRIjp7ImFtb3VudCI6IjAuMDAifSwiWVIiOnsiYW1vdW50IjoiMC4wMCJ9LCJPdGhlciI6eyJhbW91bnQiOiIwLjAwIn0sInN1cHBsaWVyVGF4RGF0YSI6W119fSwiZGlzY291bnRfY29taXNzaW9uX3RpdGxlIjpudWxsLCJkaXNjb3VudF9jb21pc3Npb25fcmF0aW8iOjAsImR5bmFtaWNfbWFya3VwX3R5cGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3RpdGxlIjpudWxsLCJkeW5hbWljX21hcmt1cF9yYXRpbyI6bnVsbCwiYXBwbGljYWJsZV9jb21pc3Npb24iOm51bGwsImFwcGxpY2FibGVfZHluYW1pY19tYXJrdXAiOm51bGx9" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 357.6, "filter": { "id": "F1MS00008-45", "price": 357.6, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Classic", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T05:50:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300550lis202607300750829lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-46", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-46", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT5H55M", "transit_time": "PT5H55M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p3", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T15:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T17:55:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1060" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1060" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BUSSTAND", "booking_code": "BUSSTAND", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT05H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BUSSTAND", "booking_code": "BUSSTAND", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 363.64, "gross_total": 363.64, "base_fare": 315, "tax": 48.64, "sell": { "currency": "EUR", "total": 363.64, "base_fare": 315, "tax": 48.64 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzYzLjY0LCJiYXNlX2ZhcmUiOjMxNSwidGF4Ijo0OC42NH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjM2My42NCwiYmFzZV9mYXJlIjozMTUsInRheCI6NDguNjQsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzYzLjY0LCJiYXNlX2ZhcmUiOjMxNSwidGF4Ijo0OC42NH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 363.64, "base_fare": 315, "tax": 48.64, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "315.00", "tax": "48.64", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 363.64, "base_fare": 315, "tax": 48.64, "gross": { "base_fare": "315.00", "tax": "48.64", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM2My42NCIsImJhc2VfZmFyZSI6IjMxNS4wMCIsInRheCI6IjQ4LjY0IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzE1LjAwIiwidGF4IjoiNDguNjQiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzNjMuNjQiLCJiYXNlX2ZhcmUiOiIzMTUuMDAiLCJ0YXgiOiI0OC42NCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMxNS4wMCIsInRheCI6IjQ4LjY0IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzYzLjY0IiwiYmFzZV9mYXJlIjoiMzE1LjAwIiwidGF4IjoiNDguNjQiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzYzLjY0LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 363.64, "filter": { "id": "F1MS00008-46", "price": 363.64, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Business Standard", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T15:45:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301545mad2026073017551060mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-47", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-47", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H15M", "transit_time": "PT3H15M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p22", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:15:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T20:35:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1062" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1062" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BUSSTAND", "booking_code": "BUSSTAND", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT03H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BUSSTAND", "booking_code": "BUSSTAND", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 363.64, "gross_total": 363.64, "base_fare": 315, "tax": 48.64, "sell": { "currency": "EUR", "total": 363.64, "base_fare": 315, "tax": 48.64 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzYzLjY0LCJiYXNlX2ZhcmUiOjMxNSwidGF4Ijo0OC42NH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjM2My42NCwiYmFzZV9mYXJlIjozMTUsInRheCI6NDguNjQsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzYzLjY0LCJiYXNlX2ZhcmUiOjMxNSwidGF4Ijo0OC42NH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 363.64, "base_fare": 315, "tax": 48.64, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "315.00", "tax": "48.64", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 363.64, "base_fare": 315, "tax": 48.64, "gross": { "base_fare": "315.00", "tax": "48.64", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM2My42NCIsImJhc2VfZmFyZSI6IjMxNS4wMCIsInRheCI6IjQ4LjY0IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzE1LjAwIiwidGF4IjoiNDguNjQiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzNjMuNjQiLCJiYXNlX2ZhcmUiOiIzMTUuMDAiLCJ0YXgiOiI0OC42NCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMxNS4wMCIsInRheCI6IjQ4LjY0IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzYzLjY0IiwiYmFzZV9mYXJlIjoiMzE1LjAwIiwidGF4IjoiNDguNjQiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzYzLjY0LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 363.64, "filter": { "id": "F1MS00008-47", "price": 363.64, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "7M8", "aircraft_name": "Boeing 737Max", "cabin_class": "Business Standard", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:15:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301815mad2026073020351062mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-48", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-48", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT10H35M", "transit_time": "PT10H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o9", "productId": "p65", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T13:15:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1066" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1066" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 7 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT10H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 7 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 363.64, "gross_total": 363.64, "base_fare": 315, "tax": 48.64, "sell": { "currency": "EUR", "total": 363.64, "base_fare": 315, "tax": 48.64 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzYzLjY0LCJiYXNlX2ZhcmUiOjMxNSwidGF4Ijo0OC42NH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjM2My42NCwiYmFzZV9mYXJlIjozMTUsInRheCI6NDguNjQsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzYzLjY0LCJiYXNlX2ZhcmUiOjMxNSwidGF4Ijo0OC42NH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 363.64, "base_fare": 315, "tax": 48.64, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "315.00", "tax": "48.64", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 363.64, "base_fare": 315, "tax": 48.64, "gross": { "base_fare": "315.00", "tax": "48.64", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM2My42NCIsImJhc2VfZmFyZSI6IjMxNS4wMCIsInRheCI6IjQ4LjY0IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzE1LjAwIiwidGF4IjoiNDguNjQiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzNjMuNjQiLCJiYXNlX2ZhcmUiOiIzMTUuMDAiLCJ0YXgiOiI0OC42NCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMxNS4wMCIsInRheCI6IjQ4LjY0IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzYzLjY0IiwiYmFzZV9mYXJlIjoiMzE1LjAwIiwidGF4IjoiNDguNjQiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzYzLjY0LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 363.64, "filter": { "id": "F1MS00008-48", "price": 363.64, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Flex", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:05:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301105mad2026073013151066mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-49", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-49", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT18H25M", "transit_time": "PT18H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o7", "productId": "p56", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T14:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T16:50:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "674" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "674" }, "booking_class": { "cabin_class": "Business Optima", "cabin_code": "BUSOPTIMA", "booking_code": "BUSOPTIMA", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT18H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Business Optima", "cabin_code": "BUSOPTIMA", "booking_code": "BUSOPTIMA", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 377.81, "gross_total": 377.81, "base_fare": 330, "tax": 47.81, "sell": { "currency": "EUR", "total": 377.81, "base_fare": 330, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mzc3LjgxLCJiYXNlX2ZhcmUiOjMzMCwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjM3Ny44MSwiYmFzZV9mYXJlIjozMzAsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mzc3LjgxLCJiYXNlX2ZhcmUiOjMzMCwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 377.81, "base_fare": 330, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "330.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 377.81, "base_fare": 330, "tax": 47.81, "gross": { "base_fare": "330.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM3Ny44MSIsImJhc2VfZmFyZSI6IjMzMC4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzMwLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzNzcuODEiLCJiYXNlX2ZhcmUiOiIzMzAuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMzMC4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzc3LjgxIiwiYmFzZV9mYXJlIjoiMzMwLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6Mzc3LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 377.81, "filter": { "id": "F1MS00008-49", "price": 377.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Business Optima", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T14:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301425mad202607301650674mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-50", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-50", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT22H25M", "transit_time": "PT22H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o7", "productId": "p57", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T10:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T12:50:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "672" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "672" }, "booking_class": { "cabin_class": "Business Optima", "cabin_code": "BUSOPTIMA", "booking_code": "BUSOPTIMA", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT22H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Business Optima", "cabin_code": "BUSOPTIMA", "booking_code": "BUSOPTIMA", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 377.81, "gross_total": 377.81, "base_fare": 330, "tax": 47.81, "sell": { "currency": "EUR", "total": 377.81, "base_fare": 330, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mzc3LjgxLCJiYXNlX2ZhcmUiOjMzMCwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjM3Ny44MSwiYmFzZV9mYXJlIjozMzAsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mzc3LjgxLCJiYXNlX2ZhcmUiOjMzMCwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 377.81, "base_fare": 330, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "330.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 377.81, "base_fare": 330, "tax": 47.81, "gross": { "base_fare": "330.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM3Ny44MSIsImJhc2VfZmFyZSI6IjMzMC4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzMwLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzNzcuODEiLCJiYXNlX2ZhcmUiOiIzMzAuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMzMC4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzc3LjgxIiwiYmFzZV9mYXJlIjoiMzMwLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6Mzc3LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 377.81, "filter": { "id": "F1MS00008-50", "price": 377.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Business Optima", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T10:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301025mad202607301250672mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-51", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-51", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT13H45M", "transit_time": "PT13H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o8", "productId": "p62", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T19:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T21:30:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "676" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "676" }, "booking_class": { "cabin_class": "Business Optima", "cabin_code": "BUSOPTIMA", "booking_code": "BUSOPTIMA", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT13H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Business Optima", "cabin_code": "BUSOPTIMA", "booking_code": "BUSOPTIMA", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 377.81, "gross_total": 377.81, "base_fare": 330, "tax": 47.81, "sell": { "currency": "EUR", "total": 377.81, "base_fare": 330, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mzc3LjgxLCJiYXNlX2ZhcmUiOjMzMCwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjM3Ny44MSwiYmFzZV9mYXJlIjozMzAsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mzc3LjgxLCJiYXNlX2ZhcmUiOjMzMCwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 377.81, "base_fare": 330, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "330.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 377.81, "base_fare": 330, "tax": 47.81, "gross": { "base_fare": "330.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM3Ny44MSIsImJhc2VfZmFyZSI6IjMzMC4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzMwLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzNzcuODEiLCJiYXNlX2ZhcmUiOiIzMzAuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMzMC4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzc3LjgxIiwiYmFzZV9mYXJlIjoiMzMwLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6Mzc3LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 377.81, "filter": { "id": "F1MS00008-51", "price": 377.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Business Optima", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T19:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301905mad202607302130676mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-52", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-52", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H0M", "transit_time": "PT8H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o11", "productId": "p71", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T12:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T20:55:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T23:15:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 1312, "lay_over": "PT08H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 381.52, "gross_total": 381.52, "base_fare": 307, "tax": 74.52, "sell": { "currency": "EUR", "total": 381.52, "base_fare": 307, "tax": 74.52 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzgxLjUyLCJiYXNlX2ZhcmUiOjMwNywidGF4Ijo3NC41Mn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjM4MS41MiwiYmFzZV9mYXJlIjozMDcsInRheCI6NzQuNTIsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzgxLjUyLCJiYXNlX2ZhcmUiOjMwNywidGF4Ijo3NC41Mn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 381.52, "base_fare": 307, "tax": 74.52, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "307.00", "tax": "74.52", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 381.52, "base_fare": 307, "tax": 74.52, "gross": { "base_fare": "307.00", "tax": "74.52", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM4MS41MiIsImJhc2VfZmFyZSI6IjMwNy4wMCIsInRheCI6Ijc0LjUyIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzA3LjAwIiwidGF4IjoiNzQuNTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzODEuNTIiLCJiYXNlX2ZhcmUiOiIzMDcuMDAiLCJ0YXgiOiI3NC41MiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMwNy4wMCIsInRheCI6Ijc0LjUyIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzgxLjUyIiwiYmFzZV9mYXJlIjoiMzA3LjAwIiwidGF4IjoiNzQuNTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzgxLjUyLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 381.52, "filter": { "id": "F1MS00008-52", "price": 381.52, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Standard", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:25:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301125cdg2026073012551331cdg202607302055rak2026073023151776", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-53", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-53", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT4H5M", "transit_time": "PT4H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o15", "productId": "p82", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T08:25:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H40M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHT", "booking_code": "LIGHT", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT04H05M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHT", "booking_code": "LIGHT", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 381.52, "gross_total": 381.52, "base_fare": 307, "tax": 74.52, "sell": { "currency": "EUR", "total": 381.52, "base_fare": 307, "tax": 74.52 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzgxLjUyLCJiYXNlX2ZhcmUiOjMwNywidGF4Ijo3NC41Mn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjM4MS41MiwiYmFzZV9mYXJlIjozMDcsInRheCI6NzQuNTIsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzgxLjUyLCJiYXNlX2ZhcmUiOjMwNywidGF4Ijo3NC41Mn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 381.52, "base_fare": 307, "tax": 74.52, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "307.00", "tax": "74.52", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 381.52, "base_fare": 307, "tax": 74.52, "gross": { "base_fare": "307.00", "tax": "74.52", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM4MS41MiIsImJhc2VfZmFyZSI6IjMwNy4wMCIsInRheCI6Ijc0LjUyIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzA3LjAwIiwidGF4IjoiNzQuNTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzODEuNTIiLCJiYXNlX2ZhcmUiOiIzMDcuMDAiLCJ0YXgiOiI3NC41MiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMwNy4wMCIsInRheCI6Ijc0LjUyIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzgxLjUyIiwiYmFzZV9mYXJlIjoiMzA3LjAwIiwidGF4IjoiNzQuNTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzgxLjUyLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 381.52, "filter": { "id": "F1MS00008-53", "price": 381.52, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Light", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:45:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-30T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300645cdg2026073008251131cdg202607301230rak2026073014551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-54", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-54", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT0H0M", "transit_time": "PT0H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o14", "productId": "p80", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T05:50:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T07:50:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "829" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "829" }, "booking_class": { "cabin_class": "Plus", "cabin_code": "PLUS", "booking_code": "PLUS", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": 499, "lay_over": "PT1D00H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "Plus", "cabin_code": "PLUS", "booking_code": "PLUS", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 387.6, "gross_total": 387.6, "base_fare": 263, "tax": 124.6, "sell": { "currency": "EUR", "total": 387.6, "base_fare": 263, "tax": 124.6 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mzg3LjYsImJhc2VfZmFyZSI6MjYzLCJ0YXgiOjEyNC42fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mzg3LjYsImJhc2VfZmFyZSI6MjYzLCJ0YXgiOjEyNC42LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjM4Ny42LCJiYXNlX2ZhcmUiOjI2MywidGF4IjoxMjQuNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 387.6, "base_fare": 263, "tax": 124.6, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "263.00", "tax": "124.60", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 387.6, "base_fare": 263, "tax": 124.6, "gross": { "base_fare": "263.00", "tax": "124.60", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM4Ny42MCIsImJhc2VfZmFyZSI6IjI2My4wMCIsInRheCI6IjEyNC42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI2My4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM4Ny42MCIsImJhc2VfZmFyZSI6IjI2My4wMCIsInRheCI6IjEyNC42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI2My4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM4Ny42MCIsImJhc2VfZmFyZSI6IjI2My4wMCIsInRheCI6IjEyNC42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjozODcuNiwidGF4QnJlYWtkb3duIjp7IkJEIjp7ImFtb3VudCI6IjAuMDAifSwiVVQiOnsiYW1vdW50IjoiMC4wMCJ9LCJFNSI6eyJhbW91bnQiOiIwLjAwIn0sIllRIjp7ImFtb3VudCI6IjAuMDAifSwiWVIiOnsiYW1vdW50IjoiMC4wMCJ9LCJPdGhlciI6eyJhbW91bnQiOiIwLjAwIn0sInN1cHBsaWVyVGF4RGF0YSI6W119fSwiZGlzY291bnRfY29taXNzaW9uX3RpdGxlIjpudWxsLCJkaXNjb3VudF9jb21pc3Npb25fcmF0aW8iOjAsImR5bmFtaWNfbWFya3VwX3R5cGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3RpdGxlIjpudWxsLCJkeW5hbWljX21hcmt1cF9yYXRpbyI6bnVsbCwiYXBwbGljYWJsZV9jb21pc3Npb24iOm51bGwsImFwcGxpY2FibGVfZHluYW1pY19tYXJrdXAiOm51bGx9" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 387.6, "filter": { "id": "F1MS00008-54", "price": 387.6, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Plus", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T05:50:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300550lis202607300750829lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-55", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-55", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H30M", "transit_time": "PT12H30M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o16", "productId": "p87", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T08:25:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H40M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHT", "booking_code": "LIGHT", "meal_code": null, "seat_available": 7 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T20:55:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T23:15:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 1312, "lay_over": "PT12H30M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHT", "booking_code": "LIGHT", "meal_code": null, "seat_available": 7 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 392.51, "gross_total": 392.51, "base_fare": 307, "tax": 85.51, "sell": { "currency": "EUR", "total": 392.51, "base_fare": 307, "tax": 85.51 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzkyLjUxLCJiYXNlX2ZhcmUiOjMwNywidGF4Ijo4NS41MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjM5Mi41MSwiYmFzZV9mYXJlIjozMDcsInRheCI6ODUuNTEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MzkyLjUxLCJiYXNlX2ZhcmUiOjMwNywidGF4Ijo4NS41MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 392.51, "base_fare": 307, "tax": 85.51, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "307.00", "tax": "85.51", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 392.51, "base_fare": 307, "tax": 85.51, "gross": { "base_fare": "307.00", "tax": "85.51", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjM5Mi41MSIsImJhc2VfZmFyZSI6IjMwNy4wMCIsInRheCI6Ijg1LjUxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzA3LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIzOTIuNTEiLCJiYXNlX2ZhcmUiOiIzMDcuMDAiLCJ0YXgiOiI4NS41MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMwNy4wMCIsInRheCI6Ijg1LjUxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMzkyLjUxIiwiYmFzZV9mYXJlIjoiMzA3LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MzkyLjUxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 392.51, "filter": { "id": "F1MS00008-55", "price": 392.51, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Light", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:45:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300645cdg2026073008251131cdg202607302055rak2026073023151776", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-56", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-56", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT9H45M", "transit_time": "PT9H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p11", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T20:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T22:05:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32N", "name": "Airbus A320-212", "picture": "32N.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "booking_class": { "cabin_class": "Executive", "cabin_code": "EXECUTIVE", "booking_code": "EXECUTIVE", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": 499, "lay_over": "PT09H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "Executive", "cabin_code": "EXECUTIVE", "booking_code": "EXECUTIVE", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 416.38, "gross_total": 416.38, "base_fare": 243, "tax": 173.38, "sell": { "currency": "EUR", "total": 416.38, "base_fare": 243, "tax": 173.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDE2LjM4LCJiYXNlX2ZhcmUiOjI0MywidGF4IjoxNzMuMzh9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo0MTYuMzgsImJhc2VfZmFyZSI6MjQzLCJ0YXgiOjE3My4zOCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo0MTYuMzgsImJhc2VfZmFyZSI6MjQzLCJ0YXgiOjE3My4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 416.38, "base_fare": 243, "tax": 173.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "243.00", "tax": "173.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 416.38, "base_fare": 243, "tax": 173.38, "gross": { "base_fare": "243.00", "tax": "173.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQxNi4zOCIsImJhc2VfZmFyZSI6IjI0My4wMCIsInRheCI6IjE3My4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI0My4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQxNi4zOCIsImJhc2VfZmFyZSI6IjI0My4wMCIsInRheCI6IjE3My4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI0My4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQxNi4zOCIsImJhc2VfZmFyZSI6IjI0My4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo0MTYuMzgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 416.38, "filter": { "id": "F1MS00008-56", "price": 416.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32N", "aircraft_name": "Airbus A320-212", "cabin_class": "Executive", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T20:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607302005lis202607302205827lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-57", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-57", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT16H45M", "transit_time": "PT16H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p17", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T20:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T22:05:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32N", "name": "Airbus A320-212", "picture": "32N.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "booking_class": { "cabin_class": "Executive", "cabin_code": "EXECUTIVE", "booking_code": "EXECUTIVE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T14:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T16:30:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H40M", "distance": 499, "lay_over": "PT16H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "E90", "name": "EMBRAER 190", "picture": "E90.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "booking_class": { "cabin_class": "Executive", "cabin_code": "EXECUTIVE", "booking_code": "EXECUTIVE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 416.38, "gross_total": 416.38, "base_fare": 243, "tax": 173.38, "sell": { "currency": "EUR", "total": 416.38, "base_fare": 243, "tax": 173.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDE2LjM4LCJiYXNlX2ZhcmUiOjI0MywidGF4IjoxNzMuMzh9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo0MTYuMzgsImJhc2VfZmFyZSI6MjQzLCJ0YXgiOjE3My4zOCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo0MTYuMzgsImJhc2VfZmFyZSI6MjQzLCJ0YXgiOjE3My4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 416.38, "base_fare": 243, "tax": 173.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "243.00", "tax": "173.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 416.38, "base_fare": 243, "tax": 173.38, "gross": { "base_fare": "243.00", "tax": "173.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQxNi4zOCIsImJhc2VfZmFyZSI6IjI0My4wMCIsInRheCI6IjE3My4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI0My4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQxNi4zOCIsImJhc2VfZmFyZSI6IjI0My4wMCIsInRheCI6IjE3My4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI0My4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQxNi4zOCIsImJhc2VfZmFyZSI6IjI0My4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo0MTYuMzgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 416.38, "filter": { "id": "F1MS00008-57", "price": 416.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32N", "aircraft_name": "Airbus A320-212", "cabin_class": "Executive", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T20:05:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-31T16:30:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607302005lis202607302205827lis202607311450rak2026073116301454", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-58", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-58", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT4H5M", "transit_time": "PT4H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o15", "productId": "p83", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T08:25:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H40M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT04H05M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 425.52, "gross_total": 425.52, "base_fare": 351, "tax": 74.52, "sell": { "currency": "EUR", "total": 425.52, "base_fare": 351, "tax": 74.52 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDI1LjUyLCJiYXNlX2ZhcmUiOjM1MSwidGF4Ijo3NC41Mn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQyNS41MiwiYmFzZV9mYXJlIjozNTEsInRheCI6NzQuNTIsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDI1LjUyLCJiYXNlX2ZhcmUiOjM1MSwidGF4Ijo3NC41Mn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 425.52, "base_fare": 351, "tax": 74.52, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "351.00", "tax": "74.52", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 425.52, "base_fare": 351, "tax": 74.52, "gross": { "base_fare": "351.00", "tax": "74.52", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQyNS41MiIsImJhc2VfZmFyZSI6IjM1MS4wMCIsInRheCI6Ijc0LjUyIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzUxLjAwIiwidGF4IjoiNzQuNTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI0MjUuNTIiLCJiYXNlX2ZhcmUiOiIzNTEuMDAiLCJ0YXgiOiI3NC41MiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM1MS4wMCIsInRheCI6Ijc0LjUyIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNDI1LjUyIiwiYmFzZV9mYXJlIjoiMzUxLjAwIiwidGF4IjoiNzQuNTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NDI1LjUyLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 425.52, "filter": { "id": "F1MS00008-58", "price": 425.52, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Standard", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:45:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-30T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300645cdg2026073008251131cdg202607301230rak2026073014551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-59", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-59", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT5H55M", "transit_time": "PT5H55M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p4", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T15:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T17:55:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1060" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1060" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BUSFLEX", "booking_code": "BUSFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT05H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BUSFLEX", "booking_code": "BUSFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 435.95, "gross_total": 435.95, "base_fare": 385, "tax": 50.95, "sell": { "currency": "EUR", "total": 435.95, "base_fare": 385, "tax": 50.95 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM1Ljk1LCJiYXNlX2ZhcmUiOjM4NSwidGF4Ijo1MC45NX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQzNS45NSwiYmFzZV9mYXJlIjozODUsInRheCI6NTAuOTUsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM1Ljk1LCJiYXNlX2ZhcmUiOjM4NSwidGF4Ijo1MC45NX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 435.95, "base_fare": 385, "tax": 50.95, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "385.00", "tax": "50.95", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 435.95, "base_fare": 385, "tax": 50.95, "gross": { "base_fare": "385.00", "tax": "50.95", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzNS45NSIsImJhc2VfZmFyZSI6IjM4NS4wMCIsInRheCI6IjUwLjk1IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzg1LjAwIiwidGF4IjoiNTAuOTUiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI0MzUuOTUiLCJiYXNlX2ZhcmUiOiIzODUuMDAiLCJ0YXgiOiI1MC45NSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM4NS4wMCIsInRheCI6IjUwLjk1IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNDM1Ljk1IiwiYmFzZV9mYXJlIjoiMzg1LjAwIiwidGF4IjoiNTAuOTUiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NDM1Ljk1LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 435.95, "filter": { "id": "F1MS00008-59", "price": 435.95, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Business Flex", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T15:45:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301545mad2026073017551060mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-60", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-60", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H15M", "transit_time": "PT3H15M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p23", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:15:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T20:35:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1062" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1062" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BUSFLEX", "booking_code": "BUSFLEX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT03H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BUSFLEX", "booking_code": "BUSFLEX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 435.95, "gross_total": 435.95, "base_fare": 385, "tax": 50.95, "sell": { "currency": "EUR", "total": 435.95, "base_fare": 385, "tax": 50.95 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM1Ljk1LCJiYXNlX2ZhcmUiOjM4NSwidGF4Ijo1MC45NX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQzNS45NSwiYmFzZV9mYXJlIjozODUsInRheCI6NTAuOTUsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM1Ljk1LCJiYXNlX2ZhcmUiOjM4NSwidGF4Ijo1MC45NX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 435.95, "base_fare": 385, "tax": 50.95, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "385.00", "tax": "50.95", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 435.95, "base_fare": 385, "tax": 50.95, "gross": { "base_fare": "385.00", "tax": "50.95", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzNS45NSIsImJhc2VfZmFyZSI6IjM4NS4wMCIsInRheCI6IjUwLjk1IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzg1LjAwIiwidGF4IjoiNTAuOTUiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI0MzUuOTUiLCJiYXNlX2ZhcmUiOiIzODUuMDAiLCJ0YXgiOiI1MC45NSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM4NS4wMCIsInRheCI6IjUwLjk1IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNDM1Ljk1IiwiYmFzZV9mYXJlIjoiMzg1LjAwIiwidGF4IjoiNTAuOTUiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NDM1Ljk1LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 435.95, "filter": { "id": "F1MS00008-60", "price": 435.95, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "7M8", "aircraft_name": "Boeing 737Max", "cabin_class": "Business Flex", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:15:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301815mad2026073020351062mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-61", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-61", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H30M", "transit_time": "PT12H30M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o16", "productId": "p88", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T08:25:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H40M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 7 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T20:55:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T23:15:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 1312, "lay_over": "PT12H30M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 7 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 436.51, "gross_total": 436.51, "base_fare": 351, "tax": 85.51, "sell": { "currency": "EUR", "total": 436.51, "base_fare": 351, "tax": 85.51 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM2LjUxLCJiYXNlX2ZhcmUiOjM1MSwidGF4Ijo4NS41MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQzNi41MSwiYmFzZV9mYXJlIjozNTEsInRheCI6ODUuNTEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM2LjUxLCJiYXNlX2ZhcmUiOjM1MSwidGF4Ijo4NS41MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 436.51, "base_fare": 351, "tax": 85.51, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "351.00", "tax": "85.51", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 436.51, "base_fare": 351, "tax": 85.51, "gross": { "base_fare": "351.00", "tax": "85.51", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzNi41MSIsImJhc2VfZmFyZSI6IjM1MS4wMCIsInRheCI6Ijg1LjUxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzUxLjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI0MzYuNTEiLCJiYXNlX2ZhcmUiOiIzNTEuMDAiLCJ0YXgiOiI4NS41MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM1MS4wMCIsInRheCI6Ijg1LjUxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNDM2LjUxIiwiYmFzZV9mYXJlIjoiMzUxLjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NDM2LjUxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 436.51, "filter": { "id": "F1MS00008-61", "price": 436.51, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Standard", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:45:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300645cdg2026073008251131cdg202607302055rak2026073023151776", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-62", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-62", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT18H25M", "transit_time": "PT18H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o7", "productId": "p52", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T14:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T16:50:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "674" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "674" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT18H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 449.81, "gross_total": 449.81, "base_fare": 402, "tax": 47.81, "sell": { "currency": "EUR", "total": 449.81, "base_fare": 402, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDQ5LjgxLCJiYXNlX2ZhcmUiOjQwMiwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQ0OS44MSwiYmFzZV9mYXJlIjo0MDIsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDQ5LjgxLCJiYXNlX2ZhcmUiOjQwMiwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 449.81, "base_fare": 402, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "402.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 449.81, "base_fare": 402, "tax": 47.81, "gross": { "base_fare": "402.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ0OS44MSIsImJhc2VfZmFyZSI6IjQwMi4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNDAyLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI0NDkuODEiLCJiYXNlX2ZhcmUiOiI0MDIuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQwMi4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNDQ5LjgxIiwiYmFzZV9mYXJlIjoiNDAyLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NDQ5LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 449.81, "filter": { "id": "F1MS00008-62", "price": 449.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Flexible", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T14:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301425mad202607301650674mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-63", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-63", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT22H25M", "transit_time": "PT22H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o7", "productId": "p53", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T10:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T12:50:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "672" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "672" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT22H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 449.81, "gross_total": 449.81, "base_fare": 402, "tax": 47.81, "sell": { "currency": "EUR", "total": 449.81, "base_fare": 402, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDQ5LjgxLCJiYXNlX2ZhcmUiOjQwMiwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQ0OS44MSwiYmFzZV9mYXJlIjo0MDIsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDQ5LjgxLCJiYXNlX2ZhcmUiOjQwMiwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 449.81, "base_fare": 402, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "402.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 449.81, "base_fare": 402, "tax": 47.81, "gross": { "base_fare": "402.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ0OS44MSIsImJhc2VfZmFyZSI6IjQwMi4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNDAyLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI0NDkuODEiLCJiYXNlX2ZhcmUiOiI0MDIuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQwMi4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNDQ5LjgxIiwiYmFzZV9mYXJlIjoiNDAyLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NDQ5LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 449.81, "filter": { "id": "F1MS00008-63", "price": 449.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Flexible", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T10:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301025mad202607301250672mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-64", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-64", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT13H45M", "transit_time": "PT13H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o8", "productId": "p60", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T19:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T21:30:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "676" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "676" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT13H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 449.81, "gross_total": 449.81, "base_fare": 402, "tax": 47.81, "sell": { "currency": "EUR", "total": 449.81, "base_fare": 402, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDQ5LjgxLCJiYXNlX2ZhcmUiOjQwMiwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQ0OS44MSwiYmFzZV9mYXJlIjo0MDIsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDQ5LjgxLCJiYXNlX2ZhcmUiOjQwMiwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 449.81, "base_fare": 402, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "402.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 449.81, "base_fare": 402, "tax": 47.81, "gross": { "base_fare": "402.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ0OS44MSIsImJhc2VfZmFyZSI6IjQwMi4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNDAyLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI0NDkuODEiLCJiYXNlX2ZhcmUiOiI0MDIuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQwMi4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNDQ5LjgxIiwiYmFzZV9mYXJlIjoiNDAyLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NDQ5LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 449.81, "filter": { "id": "F1MS00008-64", "price": 449.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Flexible", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T19:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301905mad202607302130676mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-65", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-65", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT10H35M", "transit_time": "PT10H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o9", "productId": "p66", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T13:15:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1066" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1066" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BUSSTAND", "booking_code": "BUSSTAND", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT10H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BUSSTAND", "booking_code": "BUSSTAND", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 451.44, "gross_total": 451.44, "base_fare": 400, "tax": 51.44, "sell": { "currency": "EUR", "total": 451.44, "base_fare": 400, "tax": 51.44 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDUxLjQ0LCJiYXNlX2ZhcmUiOjQwMCwidGF4Ijo1MS40NH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQ1MS40NCwiYmFzZV9mYXJlIjo0MDAsInRheCI6NTEuNDQsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDUxLjQ0LCJiYXNlX2ZhcmUiOjQwMCwidGF4Ijo1MS40NH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 451.44, "base_fare": 400, "tax": 51.44, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "400.00", "tax": "51.44", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 451.44, "base_fare": 400, "tax": 51.44, "gross": { "base_fare": "400.00", "tax": "51.44", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ1MS40NCIsImJhc2VfZmFyZSI6IjQwMC4wMCIsInRheCI6IjUxLjQ0IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNDAwLjAwIiwidGF4IjoiNTEuNDQiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI0NTEuNDQiLCJiYXNlX2ZhcmUiOiI0MDAuMDAiLCJ0YXgiOiI1MS40NCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQwMC4wMCIsInRheCI6IjUxLjQ0IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNDUxLjQ0IiwiYmFzZV9mYXJlIjoiNDAwLjAwIiwidGF4IjoiNTEuNDQiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NDUxLjQ0LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 451.44, "filter": { "id": "F1MS00008-65", "price": 451.44, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Business Standard", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:05:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301105mad2026073013151066mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-66", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-66", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H0M", "transit_time": "PT8H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o11", "productId": "p72", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T12:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T20:55:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T23:15:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 1312, "lay_over": "PT08H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 466.52, "gross_total": 466.52, "base_fare": 392, "tax": 74.52, "sell": { "currency": "EUR", "total": 466.52, "base_fare": 392, "tax": 74.52 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDY2LjUyLCJiYXNlX2ZhcmUiOjM5MiwidGF4Ijo3NC41Mn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQ2Ni41MiwiYmFzZV9mYXJlIjozOTIsInRheCI6NzQuNTIsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDY2LjUyLCJiYXNlX2ZhcmUiOjM5MiwidGF4Ijo3NC41Mn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 466.52, "base_fare": 392, "tax": 74.52, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "392.00", "tax": "74.52", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 466.52, "base_fare": 392, "tax": 74.52, "gross": { "base_fare": "392.00", "tax": "74.52", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ2Ni41MiIsImJhc2VfZmFyZSI6IjM5Mi4wMCIsInRheCI6Ijc0LjUyIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzkyLjAwIiwidGF4IjoiNzQuNTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI0NjYuNTIiLCJiYXNlX2ZhcmUiOiIzOTIuMDAiLCJ0YXgiOiI3NC41MiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM5Mi4wMCIsInRheCI6Ijc0LjUyIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNDY2LjUyIiwiYmFzZV9mYXJlIjoiMzkyLjAwIiwidGF4IjoiNzQuNTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NDY2LjUyLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 466.52, "filter": { "id": "F1MS00008-66", "price": 466.52, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:25:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301125cdg2026073012551331cdg202607302055rak2026073023151776", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-67", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-67", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT23H35M", "transit_time": "PT23H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o17", "productId": "p92", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T12:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHT", "booking_code": "LIGHT", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-31T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-31T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT23H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHT", "booking_code": "LIGHT", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 469.51, "gross_total": 469.51, "base_fare": 384, "tax": 85.51, "sell": { "currency": "EUR", "total": 469.51, "base_fare": 384, "tax": 85.51 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDY5LjUxLCJiYXNlX2ZhcmUiOjM4NCwidGF4Ijo4NS41MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQ2OS41MSwiYmFzZV9mYXJlIjozODQsInRheCI6ODUuNTEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDY5LjUxLCJiYXNlX2ZhcmUiOjM4NCwidGF4Ijo4NS41MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 469.51, "base_fare": 384, "tax": 85.51, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "384.00", "tax": "85.51", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 469.51, "base_fare": 384, "tax": 85.51, "gross": { "base_fare": "384.00", "tax": "85.51", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ2OS41MSIsImJhc2VfZmFyZSI6IjM4NC4wMCIsInRheCI6Ijg1LjUxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzg0LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI0NjkuNTEiLCJiYXNlX2ZhcmUiOiIzODQuMDAiLCJ0YXgiOiI4NS41MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM4NC4wMCIsInRheCI6Ijg1LjUxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNDY5LjUxIiwiYmFzZV9mYXJlIjoiMzg0LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NDY5LjUxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 469.51, "filter": { "id": "F1MS00008-67", "price": 469.51, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Light", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301125cdg2026073012551331cdg202607311230rak2026073114551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-68", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-68", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT9H45M", "transit_time": "PT9H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p12", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T20:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T22:05:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32N", "name": "Airbus A320-212", "picture": "32N.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "booking_class": { "cabin_class": "Top Executive", "cabin_code": "TOPEXE", "booking_code": "TOPEXE", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": 499, "lay_over": "PT09H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "Top Executive", "cabin_code": "TOPEXE", "booking_code": "TOPEXE", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 476.38, "gross_total": 476.38, "base_fare": 303, "tax": 173.38, "sell": { "currency": "EUR", "total": 476.38, "base_fare": 303, "tax": 173.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDc2LjM4LCJiYXNlX2ZhcmUiOjMwMywidGF4IjoxNzMuMzh9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo0NzYuMzgsImJhc2VfZmFyZSI6MzAzLCJ0YXgiOjE3My4zOCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo0NzYuMzgsImJhc2VfZmFyZSI6MzAzLCJ0YXgiOjE3My4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 476.38, "base_fare": 303, "tax": 173.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "303.00", "tax": "173.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 476.38, "base_fare": 303, "tax": 173.38, "gross": { "base_fare": "303.00", "tax": "173.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ3Ni4zOCIsImJhc2VfZmFyZSI6IjMwMy4wMCIsInRheCI6IjE3My4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMwMy4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ3Ni4zOCIsImJhc2VfZmFyZSI6IjMwMy4wMCIsInRheCI6IjE3My4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMwMy4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ3Ni4zOCIsImJhc2VfZmFyZSI6IjMwMy4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo0NzYuMzgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 476.38, "filter": { "id": "F1MS00008-68", "price": 476.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32N", "aircraft_name": "Airbus A320-212", "cabin_class": "Top Executive", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T20:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607302005lis202607302205827lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-69", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-69", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT16H45M", "transit_time": "PT16H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p18", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T20:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T22:05:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32N", "name": "Airbus A320-212", "picture": "32N.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "827" }, "booking_class": { "cabin_class": "Top Executive", "cabin_code": "TOPEXE", "booking_code": "TOPEXE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T14:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T16:30:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H40M", "distance": 499, "lay_over": "PT16H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "E90", "name": "EMBRAER 190", "picture": "E90.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "booking_class": { "cabin_class": "Top Executive", "cabin_code": "TOPEXE", "booking_code": "TOPEXE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 476.38, "gross_total": 476.38, "base_fare": 303, "tax": 173.38, "sell": { "currency": "EUR", "total": 476.38, "base_fare": 303, "tax": 173.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDc2LjM4LCJiYXNlX2ZhcmUiOjMwMywidGF4IjoxNzMuMzh9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo0NzYuMzgsImJhc2VfZmFyZSI6MzAzLCJ0YXgiOjE3My4zOCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo0NzYuMzgsImJhc2VfZmFyZSI6MzAzLCJ0YXgiOjE3My4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 476.38, "base_fare": 303, "tax": 173.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "303.00", "tax": "173.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 476.38, "base_fare": 303, "tax": 173.38, "gross": { "base_fare": "303.00", "tax": "173.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ3Ni4zOCIsImJhc2VfZmFyZSI6IjMwMy4wMCIsInRheCI6IjE3My4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMwMy4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ3Ni4zOCIsImJhc2VfZmFyZSI6IjMwMy4wMCIsInRheCI6IjE3My4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjMwMy4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ3Ni4zOCIsImJhc2VfZmFyZSI6IjMwMy4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo0NzYuMzgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 476.38, "filter": { "id": "F1MS00008-69", "price": 476.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32N", "aircraft_name": "Airbus A320-212", "cabin_class": "Top Executive", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T20:05:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-31T16:30:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607302005lis202607302205827lis202607311450rak2026073116301454", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-70", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-70", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1H35M", "transit_time": "PT1H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o18", "productId": "p97", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:50:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "IST", "arrival_time": "2026-07-30T10:50:00", "destination_terminal": null, "destination_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "flight_date": "2026-07-30", "flight_time": "PT4H0M", "distance": 1036, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32Q", "name": "Airbus A321 NEO", "picture": "32Q.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1878" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1878" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FX", "booking_code": "FX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 22.68, "unit": "kg", "title": "2 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "IST", "departure_time": "2026-07-30T12:25:00", "origin_terminal": null, "origin_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "destination": "RAK", "arrival_time": "2026-07-30T15:40:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT3H15M", "distance": 2141, "lay_over": "PT01H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FX", "booking_code": "FX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 22.68, "unit": "kg", "title": "2 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 477.86, "gross_total": 477.86, "base_fare": 292, "tax": 185.86, "sell": { "currency": "EUR", "total": 477.86, "base_fare": 292, "tax": 185.86 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDc3Ljg2LCJiYXNlX2ZhcmUiOjI5MiwidGF4IjoxODUuODZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo0NzcuODYsImJhc2VfZmFyZSI6MjkyLCJ0YXgiOjE4NS44NiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo0NzcuODYsImJhc2VfZmFyZSI6MjkyLCJ0YXgiOjE4NS44Nn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 477.86, "base_fare": 292, "tax": 185.86, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "292.00", "tax": "185.86", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 477.86, "base_fare": 292, "tax": 185.86, "gross": { "base_fare": "292.00", "tax": "185.86", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ3Ny44NiIsImJhc2VfZmFyZSI6IjI5Mi4wMCIsInRheCI6IjE4NS44NiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI5Mi4wMCIsInRheCI6IjE4NS44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ3Ny44NiIsImJhc2VfZmFyZSI6IjI5Mi4wMCIsInRheCI6IjE4NS44NiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjI5Mi4wMCIsInRheCI6IjE4NS44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQ3Ny44NiIsImJhc2VfZmFyZSI6IjI5Mi4wMCIsInRheCI6IjE4NS44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo0NzcuODYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 477.86, "filter": { "id": "F1MS00008-70", "price": 477.86, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TK", "carrier_marketing": "TK", "aircraft": "32Q", "aircraft_name": "Airbus A321 NEO", "cabin_class": "Flexible", "connecting_airport": [ "IST" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:50:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-30T15:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300650ist2026073010501878ist202607301225rak202607301540619", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-71", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-71", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT4H5M", "transit_time": "PT4H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o15", "productId": "p84", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T08:25:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H40M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT04H05M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 510.52, "gross_total": 510.52, "base_fare": 436, "tax": 74.52, "sell": { "currency": "EUR", "total": 510.52, "base_fare": 436, "tax": 74.52 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTEwLjUyLCJiYXNlX2ZhcmUiOjQzNiwidGF4Ijo3NC41Mn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjUxMC41MiwiYmFzZV9mYXJlIjo0MzYsInRheCI6NzQuNTIsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTEwLjUyLCJiYXNlX2ZhcmUiOjQzNiwidGF4Ijo3NC41Mn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 510.52, "base_fare": 436, "tax": 74.52, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "436.00", "tax": "74.52", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 510.52, "base_fare": 436, "tax": 74.52, "gross": { "base_fare": "436.00", "tax": "74.52", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjUxMC41MiIsImJhc2VfZmFyZSI6IjQzNi4wMCIsInRheCI6Ijc0LjUyIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNDM2LjAwIiwidGF4IjoiNzQuNTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI1MTAuNTIiLCJiYXNlX2ZhcmUiOiI0MzYuMDAiLCJ0YXgiOiI3NC41MiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQzNi4wMCIsInRheCI6Ijc0LjUyIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNTEwLjUyIiwiYmFzZV9mYXJlIjoiNDM2LjAwIiwidGF4IjoiNzQuNTIiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NTEwLjUyLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 510.52, "filter": { "id": "F1MS00008-71", "price": 510.52, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:45:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-30T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300645cdg2026073008251131cdg202607301230rak2026073014551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-72", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-72", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT23H35M", "transit_time": "PT23H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o17", "productId": "p93", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T12:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-31T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-31T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT23H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 514.51, "gross_total": 514.51, "base_fare": 429, "tax": 85.51, "sell": { "currency": "EUR", "total": 514.51, "base_fare": 429, "tax": 85.51 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTE0LjUxLCJiYXNlX2ZhcmUiOjQyOSwidGF4Ijo4NS41MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjUxNC41MSwiYmFzZV9mYXJlIjo0MjksInRheCI6ODUuNTEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTE0LjUxLCJiYXNlX2ZhcmUiOjQyOSwidGF4Ijo4NS41MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 514.51, "base_fare": 429, "tax": 85.51, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "429.00", "tax": "85.51", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 514.51, "base_fare": 429, "tax": 85.51, "gross": { "base_fare": "429.00", "tax": "85.51", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjUxNC41MSIsImJhc2VfZmFyZSI6IjQyOS4wMCIsInRheCI6Ijg1LjUxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNDI5LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI1MTQuNTEiLCJiYXNlX2ZhcmUiOiI0MjkuMDAiLCJ0YXgiOiI4NS41MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQyOS4wMCIsInRheCI6Ijg1LjUxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNTE0LjUxIiwiYmFzZV9mYXJlIjoiNDI5LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NTE0LjUxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 514.51, "filter": { "id": "F1MS00008-72", "price": 514.51, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Standard", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301125cdg2026073012551331cdg202607311230rak2026073114551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-73", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-73", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H30M", "transit_time": "PT12H30M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o16", "productId": "p89", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T08:25:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H40M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 7 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T20:55:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T23:15:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 1312, "lay_over": "PT12H30M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 7 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 521.51, "gross_total": 521.51, "base_fare": 436, "tax": 85.51, "sell": { "currency": "EUR", "total": 521.51, "base_fare": 436, "tax": 85.51 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTIxLjUxLCJiYXNlX2ZhcmUiOjQzNiwidGF4Ijo4NS41MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjUyMS41MSwiYmFzZV9mYXJlIjo0MzYsInRheCI6ODUuNTEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTIxLjUxLCJiYXNlX2ZhcmUiOjQzNiwidGF4Ijo4NS41MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 521.51, "base_fare": 436, "tax": 85.51, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "436.00", "tax": "85.51", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 521.51, "base_fare": 436, "tax": 85.51, "gross": { "base_fare": "436.00", "tax": "85.51", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjUyMS41MSIsImJhc2VfZmFyZSI6IjQzNi4wMCIsInRheCI6Ijg1LjUxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNDM2LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI1MjEuNTEiLCJiYXNlX2ZhcmUiOiI0MzYuMDAiLCJ0YXgiOiI4NS41MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQzNi4wMCIsInRheCI6Ijg1LjUxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNTIxLjUxIiwiYmFzZV9mYXJlIjoiNDM2LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NTIxLjUxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 521.51, "filter": { "id": "F1MS00008-73", "price": 521.51, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:45:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300645cdg2026073008251131cdg202607302055rak2026073023151776", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-74", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-74", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT10H35M", "transit_time": "PT10H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o9", "productId": "p67", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T13:15:00", "destination_terminal": "2", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1066" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1066" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BUSFLEX", "booking_code": "BUSFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-30T23:50:00", "origin_terminal": "1", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T00:55:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 661, "lay_over": "PT10H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "marketing": { "carrier": "UX", "carrier_name": "Air Europa", "carrier_logo": "UX.png", "flight_number": "1423" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BUSFLEX", "booking_code": "BUSFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 523.75, "gross_total": 523.75, "base_fare": 470, "tax": 53.75, "sell": { "currency": "EUR", "total": 523.75, "base_fare": 470, "tax": 53.75 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTIzLjc1LCJiYXNlX2ZhcmUiOjQ3MCwidGF4Ijo1My43NX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjUyMy43NSwiYmFzZV9mYXJlIjo0NzAsInRheCI6NTMuNzUsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTIzLjc1LCJiYXNlX2ZhcmUiOjQ3MCwidGF4Ijo1My43NX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 523.75, "base_fare": 470, "tax": 53.75, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "470.00", "tax": "53.75", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 523.75, "base_fare": 470, "tax": 53.75, "gross": { "base_fare": "470.00", "tax": "53.75", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjUyMy43NSIsImJhc2VfZmFyZSI6IjQ3MC4wMCIsInRheCI6IjUzLjc1IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNDcwLjAwIiwidGF4IjoiNTMuNzUiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI1MjMuNzUiLCJiYXNlX2ZhcmUiOiI0NzAuMDAiLCJ0YXgiOiI1My43NSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ3MC4wMCIsInRheCI6IjUzLjc1IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNTIzLjc1IiwiYmFzZV9mYXJlIjoiNDcwLjAwIiwidGF4IjoiNTMuNzUiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NTIzLjc1LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 523.75, "filter": { "id": "F1MS00008-74", "price": 523.75, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "UX", "carrier_marketing": "UX", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Business Flex", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:05:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T00:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301105mad2026073013151066mad202607302350rak2026073100551423", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-75", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-75", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H25M", "transit_time": "PT12H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p13", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T17:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T19:25:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "321", "name": "Airbus A321", "picture": "321.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "booking_class": { "cabin_class": "Top Executive", "cabin_code": "TOPEXE", "booking_code": "TOPEXE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": 499, "lay_over": "PT12H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "Top Executive", "cabin_code": "TOPEXE", "booking_code": "TOPEXE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 536.38, "gross_total": 536.38, "base_fare": 363, "tax": 173.38, "sell": { "currency": "EUR", "total": 536.38, "base_fare": 363, "tax": 173.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTM2LjM4LCJiYXNlX2ZhcmUiOjM2MywidGF4IjoxNzMuMzh9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo1MzYuMzgsImJhc2VfZmFyZSI6MzYzLCJ0YXgiOjE3My4zOCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo1MzYuMzgsImJhc2VfZmFyZSI6MzYzLCJ0YXgiOjE3My4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 536.38, "base_fare": 363, "tax": 173.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "363.00", "tax": "173.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 536.38, "base_fare": 363, "tax": 173.38, "gross": { "base_fare": "363.00", "tax": "173.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjUzNi4zOCIsImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3My4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjUzNi4zOCIsImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3My4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjUzNi4zOCIsImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo1MzYuMzgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 536.38, "filter": { "id": "F1MS00008-75", "price": 536.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "321", "aircraft_name": "Airbus A321", "cabin_class": "Top Executive", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T17:25:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301725lis202607301925825lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-76", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-76", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT18H0M", "transit_time": "PT18H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "NDC:Travelport", "offerId": "TP_CPO0", "productId": "TPp22", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:50:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T13:50:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": null, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "823" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "823" }, "booking_class": { "cabin_class": "TOP EXECUTIVE", "cabin_code": null, "booking_code": null, "meal_code": null, "seat_available": null }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": "32", "unit": "kg", "title": "1 pieces 32 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": 10, "unit": "kg", "title": "1 pieces 10 kg" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": null, "lay_over": "PT18H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "TOP EXECUTIVE", "cabin_code": null, "booking_code": null, "meal_code": null, "seat_available": null }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": "32", "unit": "kg", "title": "1 pieces 32 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": 10, "unit": "kg", "title": "1 pieces 10 kg" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 536.38, "gross_total": 536.38, "base_fare": 363, "tax": 173.38, "sell": { "currency": "EUR", "total": 536.38, "base_fare": 363, "tax": 173.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTM2LjM4LCJiYXNlX2ZhcmUiOjM2MywidGF4IjoxNzMuMzh9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo1MzYuMzgsImJhc2VfZmFyZSI6MzYzLCJ0YXgiOjE3My4zOCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo1MzYuMzgsImJhc2VfZmFyZSI6MzYzLCJ0YXgiOjE3My4zOH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 536.38, "base_fare": 363, "tax": 173.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "363.00", "tax": "173.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 536.38, "base_fare": 363, "tax": 173.38, "gross": { "base_fare": "363.00", "tax": "173.38", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjUzNi4zOCIsImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3My4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjUzNi4zOCIsImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3My4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjUzNi4zOCIsImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3My4zOCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo1MzYuMzgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 536.38, "filter": { "id": "F1MS00008-76", "price": 536.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "TOP EXECUTIVE", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:50:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301150lis202607301350823lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-77", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-77", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT19H25M", "transit_time": "PT19H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p27", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T17:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T19:25:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "321", "name": "Airbus A321", "picture": "321.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "825" }, "booking_class": { "cabin_class": "Top Executive", "cabin_code": "TOPEXE", "booking_code": "TOPEXE", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T14:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T16:30:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H40M", "distance": 499, "lay_over": "PT19H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "E90", "name": "EMBRAER 190", "picture": "E90.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1454" }, "booking_class": { "cabin_class": "Top Executive", "cabin_code": "TOPEXE", "booking_code": "TOPEXE", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 542.6, "gross_total": 542.6, "base_fare": 363, "tax": 179.6, "sell": { "currency": "EUR", "total": 542.6, "base_fare": 363, "tax": 179.6 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTQyLjYsImJhc2VfZmFyZSI6MzYzLCJ0YXgiOjE3OS42fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTQyLjYsImJhc2VfZmFyZSI6MzYzLCJ0YXgiOjE3OS42LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjU0Mi42LCJiYXNlX2ZhcmUiOjM2MywidGF4IjoxNzkuNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 542.6, "base_fare": 363, "tax": 179.6, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "363.00", "tax": "179.60", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 542.6, "base_fare": 363, "tax": 179.6, "gross": { "base_fare": "363.00", "tax": "179.60", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU0Mi42MCIsImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3OS42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3OS42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU0Mi42MCIsImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3OS42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3OS42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU0Mi42MCIsImJhc2VfZmFyZSI6IjM2My4wMCIsInRheCI6IjE3OS42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo1NDIuNiwidGF4QnJlYWtkb3duIjp7IkJEIjp7ImFtb3VudCI6IjAuMDAifSwiVVQiOnsiYW1vdW50IjoiMC4wMCJ9LCJFNSI6eyJhbW91bnQiOiIwLjAwIn0sIllRIjp7ImFtb3VudCI6IjAuMDAifSwiWVIiOnsiYW1vdW50IjoiMC4wMCJ9LCJPdGhlciI6eyJhbW91bnQiOiIwLjAwIn0sInN1cHBsaWVyVGF4RGF0YSI6W119fSwiZGlzY291bnRfY29taXNzaW9uX3RpdGxlIjpudWxsLCJkaXNjb3VudF9jb21pc3Npb25fcmF0aW8iOjAsImR5bmFtaWNfbWFya3VwX3R5cGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3RpdGxlIjpudWxsLCJkeW5hbWljX21hcmt1cF9yYXRpbyI6bnVsbCwiYXBwbGljYWJsZV9jb21pc3Npb24iOm51bGwsImFwcGxpY2FibGVfZHluYW1pY19tYXJrdXAiOm51bGx9" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 542.6, "filter": { "id": "F1MS00008-77", "price": 542.6, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "321", "aircraft_name": "Airbus A321", "cabin_class": "Top Executive", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T17:25:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-31T16:30:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301725lis202607301925825lis202607311450rak2026073116301454", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-78", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-78", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H0M", "transit_time": "PT8H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o11", "productId": "p73", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T12:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BIZSTAND", "booking_code": "BIZSTAND", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T20:55:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T23:15:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 1312, "lay_over": "PT08H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BIZSTAND", "booking_code": "BIZSTAND", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 547.27, "gross_total": 547.27, "base_fare": 472, "tax": 75.27, "sell": { "currency": "EUR", "total": 547.27, "base_fare": 472, "tax": 75.27 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTQ3LjI3LCJiYXNlX2ZhcmUiOjQ3MiwidGF4Ijo3NS4yN30sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjU0Ny4yNywiYmFzZV9mYXJlIjo0NzIsInRheCI6NzUuMjcsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTQ3LjI3LCJiYXNlX2ZhcmUiOjQ3MiwidGF4Ijo3NS4yN319", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 547.27, "base_fare": 472, "tax": 75.27, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "472.00", "tax": "75.27", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 547.27, "base_fare": 472, "tax": 75.27, "gross": { "base_fare": "472.00", "tax": "75.27", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU0Ny4yNyIsImJhc2VfZmFyZSI6IjQ3Mi4wMCIsInRheCI6Ijc1LjI3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNDcyLjAwIiwidGF4IjoiNzUuMjciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI1NDcuMjciLCJiYXNlX2ZhcmUiOiI0NzIuMDAiLCJ0YXgiOiI3NS4yNyIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ3Mi4wMCIsInRheCI6Ijc1LjI3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNTQ3LjI3IiwiYmFzZV9mYXJlIjoiNDcyLjAwIiwidGF4IjoiNzUuMjciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NTQ3LjI3LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 547.27, "filter": { "id": "F1MS00008-78", "price": 547.27, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Business Standard", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:25:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301125cdg2026073012551331cdg202607302055rak2026073023151776", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-79", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-79", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT16H25M", "transit_time": "PT16H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o19", "productId": "p100", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:35:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T20:05:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "223", "name": "Airbus A220-300", "picture": "223.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1731" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1731" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHT", "booking_code": "LIGHT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-31T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-31T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT16H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHT", "booking_code": "LIGHT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 0, "weight": 22.68, "unit": "kg", "title": "22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 549.51, "gross_total": 549.51, "base_fare": 464, "tax": 85.51, "sell": { "currency": "EUR", "total": 549.51, "base_fare": 464, "tax": 85.51 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTQ5LjUxLCJiYXNlX2ZhcmUiOjQ2NCwidGF4Ijo4NS41MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjU0OS41MSwiYmFzZV9mYXJlIjo0NjQsInRheCI6ODUuNTEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTQ5LjUxLCJiYXNlX2ZhcmUiOjQ2NCwidGF4Ijo4NS41MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 549.51, "base_fare": 464, "tax": 85.51, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "464.00", "tax": "85.51", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 549.51, "base_fare": 464, "tax": 85.51, "gross": { "base_fare": "464.00", "tax": "85.51", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU0OS41MSIsImJhc2VfZmFyZSI6IjQ2NC4wMCIsInRheCI6Ijg1LjUxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNDY0LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI1NDkuNTEiLCJiYXNlX2ZhcmUiOiI0NjQuMDAiLCJ0YXgiOiI4NS41MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NC4wMCIsInRheCI6Ijg1LjUxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNTQ5LjUxIiwiYmFzZV9mYXJlIjoiNDY0LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NTQ5LjUxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 549.51, "filter": { "id": "F1MS00008-79", "price": 549.51, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "223", "aircraft_name": "Airbus A220-300", "cabin_class": "Light", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:35:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301835cdg2026073020051731cdg202607311230rak2026073114551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-80", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-80", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H45M", "transit_time": "PT3H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o20", "productId": "p105", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T10:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "IST", "arrival_time": "2026-07-30T14:40:00", "destination_terminal": null, "destination_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "flight_date": "2026-07-30", "flight_time": "PT3H55M", "distance": 1036, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1874" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1874" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FX", "booking_code": "FX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 22.68, "unit": "kg", "title": "2 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "IST", "departure_time": "2026-07-30T18:25:00", "origin_terminal": null, "origin_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "destination": "RAK", "arrival_time": "2026-07-30T21:45:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT3H20M", "distance": 2141, "lay_over": "PT03H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "621" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "621" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FX", "booking_code": "FX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 22.68, "unit": "kg", "title": "2 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 566.86, "gross_total": 566.86, "base_fare": 381, "tax": 185.86, "sell": { "currency": "EUR", "total": 566.86, "base_fare": 381, "tax": 185.86 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTY2Ljg2LCJiYXNlX2ZhcmUiOjM4MSwidGF4IjoxODUuODZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo1NjYuODYsImJhc2VfZmFyZSI6MzgxLCJ0YXgiOjE4NS44NiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo1NjYuODYsImJhc2VfZmFyZSI6MzgxLCJ0YXgiOjE4NS44Nn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 566.86, "base_fare": 381, "tax": 185.86, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "381.00", "tax": "185.86", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 566.86, "base_fare": 381, "tax": 185.86, "gross": { "base_fare": "381.00", "tax": "185.86", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU2Ni44NiIsImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU2Ni44NiIsImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU2Ni44NiIsImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo1NjYuODYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 566.86, "filter": { "id": "F1MS00008-80", "price": 566.86, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TK", "carrier_marketing": "TK", "aircraft": "359", "aircraft_name": "Airbus A350-900", "cabin_class": "Flexible", "connecting_airport": [ "IST" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T10:45:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T21:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301045ist2026073014401874ist202607301825rak202607302145621", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-81", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-81", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H45M", "transit_time": "PT12H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o20", "productId": "p106", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T19:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "IST", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": null, "destination_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "flight_date": "2026-07-30", "flight_time": "PT3H55M", "distance": 1036, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "333", "name": "Airbus A330-300", "picture": "333.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1876" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1876" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FX", "booking_code": "FX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 22.68, "unit": "kg", "title": "2 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "IST", "departure_time": "2026-07-31T12:25:00", "origin_terminal": null, "origin_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "destination": "RAK", "arrival_time": "2026-07-31T15:40:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT3H15M", "distance": 2141, "lay_over": "PT12H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FX", "booking_code": "FX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 22.68, "unit": "kg", "title": "2 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 566.86, "gross_total": 566.86, "base_fare": 381, "tax": 185.86, "sell": { "currency": "EUR", "total": 566.86, "base_fare": 381, "tax": 185.86 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTY2Ljg2LCJiYXNlX2ZhcmUiOjM4MSwidGF4IjoxODUuODZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo1NjYuODYsImJhc2VfZmFyZSI6MzgxLCJ0YXgiOjE4NS44NiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo1NjYuODYsImJhc2VfZmFyZSI6MzgxLCJ0YXgiOjE4NS44Nn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 566.86, "base_fare": 381, "tax": 185.86, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "381.00", "tax": "185.86", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 566.86, "base_fare": 381, "tax": 185.86, "gross": { "base_fare": "381.00", "tax": "185.86", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU2Ni44NiIsImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU2Ni44NiIsImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU2Ni44NiIsImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo1NjYuODYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 566.86, "filter": { "id": "F1MS00008-81", "price": 566.86, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TK", "carrier_marketing": "TK", "aircraft": "333", "aircraft_name": "Airbus A330-300", "cabin_class": "Flexible", "connecting_airport": [ "IST" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T19:45:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T15:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301945ist2026073023401876ist202607311225rak202607311540619", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-82", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-82", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT17H10M", "transit_time": "PT17H10M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o20", "productId": "p107", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T15:15:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "IST", "arrival_time": "2026-07-30T19:15:00", "destination_terminal": null, "destination_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "flight_date": "2026-07-30", "flight_time": "PT4H0M", "distance": 1036, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "333", "name": "Airbus A330-300", "picture": "333.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1896" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1896" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FX", "booking_code": "FX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 22.68, "unit": "kg", "title": "2 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "IST", "departure_time": "2026-07-31T12:25:00", "origin_terminal": null, "origin_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "destination": "RAK", "arrival_time": "2026-07-31T15:40:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT3H15M", "distance": 2141, "lay_over": "PT17H10M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "booking_class": { "cabin_class": "Flexible", "cabin_code": "FX", "booking_code": "FX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 22.68, "unit": "kg", "title": "2 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 566.86, "gross_total": 566.86, "base_fare": 381, "tax": 185.86, "sell": { "currency": "EUR", "total": 566.86, "base_fare": 381, "tax": 185.86 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTY2Ljg2LCJiYXNlX2ZhcmUiOjM4MSwidGF4IjoxODUuODZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo1NjYuODYsImJhc2VfZmFyZSI6MzgxLCJ0YXgiOjE4NS44NiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo1NjYuODYsImJhc2VfZmFyZSI6MzgxLCJ0YXgiOjE4NS44Nn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 566.86, "base_fare": 381, "tax": 185.86, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "381.00", "tax": "185.86", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 566.86, "base_fare": 381, "tax": 185.86, "gross": { "base_fare": "381.00", "tax": "185.86", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU2Ni44NiIsImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU2Ni44NiIsImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU2Ni44NiIsImJhc2VfZmFyZSI6IjM4MS4wMCIsInRheCI6IjE4NS44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo1NjYuODYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 566.86, "filter": { "id": "F1MS00008-82", "price": 566.86, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TK", "carrier_marketing": "TK", "aircraft": "333", "aircraft_name": "Airbus A330-300", "cabin_class": "Flexible", "connecting_airport": [ "IST" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T15:15:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T15:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301515ist2026073019151896ist202607311225rak202607311540619", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-83", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-83", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT16H25M", "transit_time": "PT16H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o19", "productId": "p101", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:35:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T20:05:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "223", "name": "Airbus A220-300", "picture": "223.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1731" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1731" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-31T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-31T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT16H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD", "booking_code": "STANDARD", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 595.51, "gross_total": 595.51, "base_fare": 510, "tax": 85.51, "sell": { "currency": "EUR", "total": 595.51, "base_fare": 510, "tax": 85.51 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTk1LjUxLCJiYXNlX2ZhcmUiOjUxMCwidGF4Ijo4NS41MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjU5NS41MSwiYmFzZV9mYXJlIjo1MTAsInRheCI6ODUuNTEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NTk1LjUxLCJiYXNlX2ZhcmUiOjUxMCwidGF4Ijo4NS41MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 595.51, "base_fare": 510, "tax": 85.51, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "510.00", "tax": "85.51", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 595.51, "base_fare": 510, "tax": 85.51, "gross": { "base_fare": "510.00", "tax": "85.51", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjU5NS41MSIsImJhc2VfZmFyZSI6IjUxMC4wMCIsInRheCI6Ijg1LjUxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNTEwLjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI1OTUuNTEiLCJiYXNlX2ZhcmUiOiI1MTAuMDAiLCJ0YXgiOiI4NS41MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjUxMC4wMCIsInRheCI6Ijg1LjUxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNTk1LjUxIiwiYmFzZV9mYXJlIjoiNTEwLjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NTk1LjUxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 595.51, "filter": { "id": "F1MS00008-83", "price": 595.51, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "223", "aircraft_name": "Airbus A220-300", "cabin_class": "Standard", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:35:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301835cdg2026073020051731cdg202607311230rak2026073114551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-84", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-84", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT23H35M", "transit_time": "PT23H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o17", "productId": "p94", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T12:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-31T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-31T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT23H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 6 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 601.51, "gross_total": 601.51, "base_fare": 516, "tax": 85.51, "sell": { "currency": "EUR", "total": 601.51, "base_fare": 516, "tax": 85.51 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NjAxLjUxLCJiYXNlX2ZhcmUiOjUxNiwidGF4Ijo4NS41MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjYwMS41MSwiYmFzZV9mYXJlIjo1MTYsInRheCI6ODUuNTEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NjAxLjUxLCJiYXNlX2ZhcmUiOjUxNiwidGF4Ijo4NS41MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 601.51, "base_fare": 516, "tax": 85.51, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "516.00", "tax": "85.51", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 601.51, "base_fare": 516, "tax": 85.51, "gross": { "base_fare": "516.00", "tax": "85.51", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjYwMS41MSIsImJhc2VfZmFyZSI6IjUxNi4wMCIsInRheCI6Ijg1LjUxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNTE2LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI2MDEuNTEiLCJiYXNlX2ZhcmUiOiI1MTYuMDAiLCJ0YXgiOiI4NS41MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjUxNi4wMCIsInRheCI6Ijg1LjUxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNjAxLjUxIiwiYmFzZV9mYXJlIjoiNTE2LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NjAxLjUxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 601.51, "filter": { "id": "F1MS00008-84", "price": 601.51, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301125cdg2026073012551331cdg202607311230rak2026073114551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-85", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-85", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT0H0M", "transit_time": "PT0H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o14", "productId": "p81", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T05:50:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "LIS", "arrival_time": "2026-07-30T07:50:00", "destination_terminal": "1", "destination_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "flight_date": "2026-07-30", "flight_time": "PT2H0M", "distance": 1049, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "829" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "829" }, "booking_class": { "cabin_class": "Top Executive", "cabin_code": "TOPEXE", "booking_code": "TOPEXE", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "LIS", "departure_time": "2026-07-31T07:50:00", "origin_terminal": "1", "origin_airport": { "name": "Lisbon Humberto Delgado Airport", "city": "Lisbon", "country": "Portugal", "timezone": "Europe\/Lisbon" }, "destination": "RAK", "arrival_time": "2026-07-31T09:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H35M", "distance": 499, "lay_over": "PT1D00H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "marketing": { "carrier": "TP", "carrier_name": "TAP Portugal", "carrier_logo": "TP.png", "flight_number": "1452" }, "booking_class": { "cabin_class": "Top Executive", "cabin_code": "TOPEXE", "booking_code": "TOPEXE", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 672.6, "gross_total": 672.6, "base_fare": 493, "tax": 179.6, "sell": { "currency": "EUR", "total": 672.6, "base_fare": 493, "tax": 179.6 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NjcyLjYsImJhc2VfZmFyZSI6NDkzLCJ0YXgiOjE3OS42fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NjcyLjYsImJhc2VfZmFyZSI6NDkzLCJ0YXgiOjE3OS42LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjY3Mi42LCJiYXNlX2ZhcmUiOjQ5MywidGF4IjoxNzkuNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 672.6, "base_fare": 493, "tax": 179.6, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "493.00", "tax": "179.60", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 672.6, "base_fare": 493, "tax": 179.6, "gross": { "base_fare": "493.00", "tax": "179.60", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY3Mi42MCIsImJhc2VfZmFyZSI6IjQ5My4wMCIsInRheCI6IjE3OS42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ5My4wMCIsInRheCI6IjE3OS42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY3Mi42MCIsImJhc2VfZmFyZSI6IjQ5My4wMCIsInRheCI6IjE3OS42MCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ5My4wMCIsInRheCI6IjE3OS42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY3Mi42MCIsImJhc2VfZmFyZSI6IjQ5My4wMCIsInRheCI6IjE3OS42MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo2NzIuNiwidGF4QnJlYWtkb3duIjp7IkJEIjp7ImFtb3VudCI6IjAuMDAifSwiVVQiOnsiYW1vdW50IjoiMC4wMCJ9LCJFNSI6eyJhbW91bnQiOiIwLjAwIn0sIllRIjp7ImFtb3VudCI6IjAuMDAifSwiWVIiOnsiYW1vdW50IjoiMC4wMCJ9LCJPdGhlciI6eyJhbW91bnQiOiIwLjAwIn0sInN1cHBsaWVyVGF4RGF0YSI6W119fSwiZGlzY291bnRfY29taXNzaW9uX3RpdGxlIjpudWxsLCJkaXNjb3VudF9jb21pc3Npb25fcmF0aW8iOjAsImR5bmFtaWNfbWFya3VwX3R5cGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3RpdGxlIjpudWxsLCJkeW5hbWljX21hcmt1cF9yYXRpbyI6bnVsbCwiYXBwbGljYWJsZV9jb21pc3Npb24iOm51bGwsImFwcGxpY2FibGVfZHluYW1pY19tYXJrdXAiOm51bGx9" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 672.6, "filter": { "id": "F1MS00008-85", "price": 672.6, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TP", "carrier_marketing": "TP", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Top Executive", "connecting_airport": [ "LIS" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T05:50:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-07-31T09:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300550lis202607300750829lis202607310750rak2026073109251452", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-86", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-86", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT16H25M", "transit_time": "PT16H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o19", "productId": "p102", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:35:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T20:05:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "223", "name": "Airbus A220-300", "picture": "223.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1731" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1731" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-31T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-31T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT16H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX", "booking_code": "FLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 683.51, "gross_total": 683.51, "base_fare": 598, "tax": 85.51, "sell": { "currency": "EUR", "total": 683.51, "base_fare": 598, "tax": 85.51 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NjgzLjUxLCJiYXNlX2ZhcmUiOjU5OCwidGF4Ijo4NS41MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjY4My41MSwiYmFzZV9mYXJlIjo1OTgsInRheCI6ODUuNTEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NjgzLjUxLCJiYXNlX2ZhcmUiOjU5OCwidGF4Ijo4NS41MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 683.51, "base_fare": 598, "tax": 85.51, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "598.00", "tax": "85.51", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 683.51, "base_fare": 598, "tax": 85.51, "gross": { "base_fare": "598.00", "tax": "85.51", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY4My41MSIsImJhc2VfZmFyZSI6IjU5OC4wMCIsInRheCI6Ijg1LjUxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNTk4LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI2ODMuNTEiLCJiYXNlX2ZhcmUiOiI1OTguMDAiLCJ0YXgiOiI4NS41MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU5OC4wMCIsInRheCI6Ijg1LjUxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNjgzLjUxIiwiYmFzZV9mYXJlIjoiNTk4LjAwIiwidGF4IjoiODUuNTEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NjgzLjUxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 683.51, "filter": { "id": "F1MS00008-86", "price": 683.51, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "223", "aircraft_name": "Airbus A220-300", "cabin_class": "Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:35:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301835cdg2026073020051731cdg202607311230rak2026073114551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-87", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-87", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT2H0M", "transit_time": "PT2H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p40", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T12:55:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T15:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T17:05:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T18:10:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT02H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "413" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "413" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 698.06, "gross_total": 698.06, "base_fare": 555, "tax": 143.06, "sell": { "currency": "EUR", "total": 698.06, "base_fare": 555, "tax": 143.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Njk4LjA2LCJiYXNlX2ZhcmUiOjU1NSwidGF4IjoxNDMuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo2OTguMDYsImJhc2VfZmFyZSI6NTU1LCJ0YXgiOjE0My4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo2OTguMDYsImJhc2VfZmFyZSI6NTU1LCJ0YXgiOjE0My4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 698.06, "base_fare": 555, "tax": 143.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "555.00", "tax": "143.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 698.06, "base_fare": 555, "tax": 143.06, "gross": { "base_fare": "555.00", "tax": "143.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY5OC4wNiIsImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY5OC4wNiIsImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY5OC4wNiIsImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo2OTguMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 698.06, "filter": { "id": "F1MS00008-87", "price": 698.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Bus Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T12:55:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-30T18:10:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301255cmn202607301505955cmn202607301705rak202607301810413", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-88", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-88", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT2H20M", "transit_time": "PT2H20M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p41", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T20:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T22:35:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT02H20M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 698.06, "gross_total": 698.06, "base_fare": 555, "tax": 143.06, "sell": { "currency": "EUR", "total": 698.06, "base_fare": 555, "tax": 143.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Njk4LjA2LCJiYXNlX2ZhcmUiOjU1NSwidGF4IjoxNDMuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo2OTguMDYsImJhc2VfZmFyZSI6NTU1LCJ0YXgiOjE0My4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo2OTguMDYsImJhc2VfZmFyZSI6NTU1LCJ0YXgiOjE0My4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 698.06, "base_fare": 555, "tax": 143.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "555.00", "tax": "143.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 698.06, "base_fare": 555, "tax": 143.06, "gross": { "base_fare": "555.00", "tax": "143.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY5OC4wNiIsImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY5OC4wNiIsImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY5OC4wNiIsImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo2OTguMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 698.06, "filter": { "id": "F1MS00008-88", "price": 698.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Bus Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:05:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301805cmn202607302015951cmn202607302235rak202607302340403", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-89", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-89", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H40M", "transit_time": "PT3H40M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p42", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T20:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T23:55:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T01:00:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT03H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "417" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "417" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 698.06, "gross_total": 698.06, "base_fare": 555, "tax": 143.06, "sell": { "currency": "EUR", "total": 698.06, "base_fare": 555, "tax": 143.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Njk4LjA2LCJiYXNlX2ZhcmUiOjU1NSwidGF4IjoxNDMuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo2OTguMDYsImJhc2VfZmFyZSI6NTU1LCJ0YXgiOjE0My4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo2OTguMDYsImJhc2VfZmFyZSI6NTU1LCJ0YXgiOjE0My4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 698.06, "base_fare": 555, "tax": 143.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "555.00", "tax": "143.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 698.06, "base_fare": 555, "tax": 143.06, "gross": { "base_fare": "555.00", "tax": "143.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY5OC4wNiIsImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY5OC4wNiIsImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY5OC4wNiIsImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo2OTguMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 698.06, "filter": { "id": "F1MS00008-89", "price": 698.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Bus Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:05:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T01:00:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301805cmn202607302015951cmn202607302355rak202607310100417", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-90", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-90", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT7H30M", "transit_time": "PT7H30M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p43", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T12:55:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T15:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T22:35:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT07H30M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 698.06, "gross_total": 698.06, "base_fare": 555, "tax": 143.06, "sell": { "currency": "EUR", "total": 698.06, "base_fare": 555, "tax": 143.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Njk4LjA2LCJiYXNlX2ZhcmUiOjU1NSwidGF4IjoxNDMuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo2OTguMDYsImJhc2VfZmFyZSI6NTU1LCJ0YXgiOjE0My4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo2OTguMDYsImJhc2VfZmFyZSI6NTU1LCJ0YXgiOjE0My4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 698.06, "base_fare": 555, "tax": 143.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "555.00", "tax": "143.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 698.06, "base_fare": 555, "tax": 143.06, "gross": { "base_fare": "555.00", "tax": "143.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY5OC4wNiIsImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY5OC4wNiIsImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjY5OC4wNiIsImJhc2VfZmFyZSI6IjU1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo2OTguMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 698.06, "filter": { "id": "F1MS00008-90", "price": 698.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Bus Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T12:55:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301255cmn202607301505955cmn202607302235rak202607302340403", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-91", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-91", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H30M", "transit_time": "PT12H30M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o16", "productId": "p90", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T08:25:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H40M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BIZSTAND", "booking_code": "BIZSTAND", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T20:55:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T23:15:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 1312, "lay_over": "PT12H30M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BIZSTAND", "booking_code": "BIZSTAND", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 728.26, "gross_total": 728.26, "base_fare": 642, "tax": 86.26, "sell": { "currency": "EUR", "total": 728.26, "base_fare": 642, "tax": 86.26 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzI4LjI2LCJiYXNlX2ZhcmUiOjY0MiwidGF4Ijo4Ni4yNn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjcyOC4yNiwiYmFzZV9mYXJlIjo2NDIsInRheCI6ODYuMjYsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzI4LjI2LCJiYXNlX2ZhcmUiOjY0MiwidGF4Ijo4Ni4yNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 728.26, "base_fare": 642, "tax": 86.26, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "642.00", "tax": "86.26", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 728.26, "base_fare": 642, "tax": 86.26, "gross": { "base_fare": "642.00", "tax": "86.26", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjcyOC4yNiIsImJhc2VfZmFyZSI6IjY0Mi4wMCIsInRheCI6Ijg2LjI2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNjQyLjAwIiwidGF4IjoiODYuMjYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI3MjguMjYiLCJiYXNlX2ZhcmUiOiI2NDIuMDAiLCJ0YXgiOiI4Ni4yNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjY0Mi4wMCIsInRheCI6Ijg2LjI2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNzI4LjI2IiwiYmFzZV9mYXJlIjoiNjQyLjAwIiwidGF4IjoiODYuMjYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NzI4LjI2LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 728.26, "filter": { "id": "F1MS00008-91", "price": 728.26, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Business Standard", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:45:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300645cdg2026073008251131cdg202607302055rak2026073023151776", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-92", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-92", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT23H35M", "transit_time": "PT23H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o17", "productId": "p95", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T12:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BIZSTAND", "booking_code": "BIZSTAND", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-31T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-31T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT23H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BIZSTAND", "booking_code": "BIZSTAND", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 728.26, "gross_total": 728.26, "base_fare": 642, "tax": 86.26, "sell": { "currency": "EUR", "total": 728.26, "base_fare": 642, "tax": 86.26 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzI4LjI2LCJiYXNlX2ZhcmUiOjY0MiwidGF4Ijo4Ni4yNn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjcyOC4yNiwiYmFzZV9mYXJlIjo2NDIsInRheCI6ODYuMjYsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzI4LjI2LCJiYXNlX2ZhcmUiOjY0MiwidGF4Ijo4Ni4yNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 728.26, "base_fare": 642, "tax": 86.26, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "642.00", "tax": "86.26", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 728.26, "base_fare": 642, "tax": 86.26, "gross": { "base_fare": "642.00", "tax": "86.26", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjcyOC4yNiIsImJhc2VfZmFyZSI6IjY0Mi4wMCIsInRheCI6Ijg2LjI2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNjQyLjAwIiwidGF4IjoiODYuMjYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI3MjguMjYiLCJiYXNlX2ZhcmUiOiI2NDIuMDAiLCJ0YXgiOiI4Ni4yNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjY0Mi4wMCIsInRheCI6Ijg2LjI2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNzI4LjI2IiwiYmFzZV9mYXJlIjoiNjQyLjAwIiwidGF4IjoiODYuMjYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NzI4LjI2LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 728.26, "filter": { "id": "F1MS00008-92", "price": 728.26, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Business Standard", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301125cdg2026073012551331cdg202607311230rak2026073114551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-93", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-93", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT2H0M", "transit_time": "PT2H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p44", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T12:55:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T15:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T17:05:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T18:10:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT02H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "413" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "413" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 798.06, "gross_total": 798.06, "base_fare": 655, "tax": 143.06, "sell": { "currency": "EUR", "total": 798.06, "base_fare": 655, "tax": 143.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Nzk4LjA2LCJiYXNlX2ZhcmUiOjY1NSwidGF4IjoxNDMuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3OTguMDYsImJhc2VfZmFyZSI6NjU1LCJ0YXgiOjE0My4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3OTguMDYsImJhc2VfZmFyZSI6NjU1LCJ0YXgiOjE0My4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 798.06, "base_fare": 655, "tax": 143.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "655.00", "tax": "143.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 798.06, "base_fare": 655, "tax": 143.06, "gross": { "base_fare": "655.00", "tax": "143.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc5OC4wNiIsImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc5OC4wNiIsImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc5OC4wNiIsImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3OTguMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 798.06, "filter": { "id": "F1MS00008-93", "price": 798.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Bus Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T12:55:00", "arrival_timing_slot": "evening", "arrival_departure_time": "2026-07-30T18:10:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301255cmn202607301505955cmn202607301705rak202607301810413", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-94", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-94", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT2H20M", "transit_time": "PT2H20M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p45", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T20:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T22:35:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT02H20M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 798.06, "gross_total": 798.06, "base_fare": 655, "tax": 143.06, "sell": { "currency": "EUR", "total": 798.06, "base_fare": 655, "tax": 143.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Nzk4LjA2LCJiYXNlX2ZhcmUiOjY1NSwidGF4IjoxNDMuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3OTguMDYsImJhc2VfZmFyZSI6NjU1LCJ0YXgiOjE0My4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3OTguMDYsImJhc2VfZmFyZSI6NjU1LCJ0YXgiOjE0My4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 798.06, "base_fare": 655, "tax": 143.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "655.00", "tax": "143.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 798.06, "base_fare": 655, "tax": 143.06, "gross": { "base_fare": "655.00", "tax": "143.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc5OC4wNiIsImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc5OC4wNiIsImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc5OC4wNiIsImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3OTguMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 798.06, "filter": { "id": "F1MS00008-94", "price": 798.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Bus Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:05:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301805cmn202607302015951cmn202607302235rak202607302340403", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-95", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-95", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H40M", "transit_time": "PT3H40M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p46", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T20:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "951" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T23:55:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T01:00:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT03H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "417" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "417" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 798.06, "gross_total": 798.06, "base_fare": 655, "tax": 143.06, "sell": { "currency": "EUR", "total": 798.06, "base_fare": 655, "tax": 143.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Nzk4LjA2LCJiYXNlX2ZhcmUiOjY1NSwidGF4IjoxNDMuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3OTguMDYsImJhc2VfZmFyZSI6NjU1LCJ0YXgiOjE0My4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3OTguMDYsImJhc2VfZmFyZSI6NjU1LCJ0YXgiOjE0My4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 798.06, "base_fare": 655, "tax": 143.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "655.00", "tax": "143.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 798.06, "base_fare": 655, "tax": 143.06, "gross": { "base_fare": "655.00", "tax": "143.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc5OC4wNiIsImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc5OC4wNiIsImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc5OC4wNiIsImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3OTguMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 798.06, "filter": { "id": "F1MS00008-95", "price": 798.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Bus Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:05:00", "arrival_timing_slot": "midnight", "arrival_departure_time": "2026-07-31T01:00:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301805cmn202607302015951cmn202607302355rak202607310100417", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-96", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-96", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT7H30M", "transit_time": "PT7H30M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p47", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T12:55:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-07-30T15:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "73H", "name": "Boeing 737", "picture": "73H.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "955" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-30T22:35:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT07H30M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "403" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 798.06, "gross_total": 798.06, "base_fare": 655, "tax": 143.06, "sell": { "currency": "EUR", "total": 798.06, "base_fare": 655, "tax": 143.06 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Nzk4LjA2LCJiYXNlX2ZhcmUiOjY1NSwidGF4IjoxNDMuMDZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3OTguMDYsImJhc2VfZmFyZSI6NjU1LCJ0YXgiOjE0My4wNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3OTguMDYsImJhc2VfZmFyZSI6NjU1LCJ0YXgiOjE0My4wNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 798.06, "base_fare": 655, "tax": 143.06, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "655.00", "tax": "143.06", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 798.06, "base_fare": 655, "tax": 143.06, "gross": { "base_fare": "655.00", "tax": "143.06", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc5OC4wNiIsImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc5OC4wNiIsImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc5OC4wNiIsImJhc2VfZmFyZSI6IjY1NS4wMCIsInRheCI6IjE0My4wNiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3OTguMDYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 798.06, "filter": { "id": "F1MS00008-96", "price": 798.06, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "73H", "aircraft_name": "Boeing 737", "cabin_class": "Bus Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T12:55:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301255cmn202607301505955cmn202607302235rak202607302340403", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-97", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-97", "get_branded_fare": "no", "no_of_stops_title": "2 Stop Flight", "no_of_stops": 2, "flight_time": "PT11H5M", "transit_time": "PT11H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o21", "productId": "p114", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:40:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "AUH", "arrival_time": "2026-07-30T19:40:00", "destination_terminal": "A", "destination_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "flight_date": "2026-07-30", "flight_time": "PT8H0M", "distance": 2896, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "781", "name": "Boeing 787-10", "picture": "781.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "booking_class": { "cabin_class": "Economy Basic", "cabin_code": "YBASIC", "booking_code": "YBASIC", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": null, "unit": "kg", "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "AUH", "departure_time": "2026-07-31T02:05:00", "origin_terminal": "A", "origin_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "destination": "CMN", "arrival_time": "2026-07-31T07:20:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT5H15M", "distance": 3751, "lay_over": "PT06H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "351", "name": "Airbus", "picture": "351.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "booking_class": { "cabin_class": "Economy Basic", "cabin_code": "YBASIC", "booking_code": "YBASIC", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": null, "unit": "kg", "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-31T12:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T13:05:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT04H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "4218" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "4218" }, "booking_class": { "cabin_class": "Economy Basic", "cabin_code": "YBASIC", "booking_code": "YBASIC", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": null, "unit": "kg", "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 805.24, "gross_total": 805.24, "base_fare": 561, "tax": 244.24, "sell": { "currency": "EUR", "total": 805.24, "base_fare": 561, "tax": 244.24 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODA1LjI0LCJiYXNlX2ZhcmUiOjU2MSwidGF4IjoyNDQuMjR9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo4MDUuMjQsImJhc2VfZmFyZSI6NTYxLCJ0YXgiOjI0NC4yNCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo4MDUuMjQsImJhc2VfZmFyZSI6NTYxLCJ0YXgiOjI0NC4yNH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 805.24, "base_fare": 561, "tax": 244.24, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "561.00", "tax": "244.24", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 805.24, "base_fare": 561, "tax": 244.24, "gross": { "base_fare": "561.00", "tax": "244.24", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjgwNS4yNCIsImJhc2VfZmFyZSI6IjU2MS4wMCIsInRheCI6IjI0NC4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU2MS4wMCIsInRheCI6IjI0NC4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjgwNS4yNCIsImJhc2VfZmFyZSI6IjU2MS4wMCIsInRheCI6IjI0NC4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU2MS4wMCIsInRheCI6IjI0NC4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjgwNS4yNCIsImJhc2VfZmFyZSI6IjU2MS4wMCIsInRheCI6IjI0NC4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo4MDUuMjQsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 805.24, "filter": { "id": "F1MS00008-97", "price": 805.24, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "EY", "carrier_marketing": "EY", "aircraft": "781", "aircraft_name": "Boeing 787-10", "cabin_class": "Economy Basic", "connecting_airport": [ "AUH", "CMN" ], "total_segment_count": 3, "no_of_stops": 2, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:40:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T13:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301140auh20260730194082auh202607310205cmn202607310720757cmn202607311200rak2026073113054218", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-98", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-98", "get_branded_fare": "no", "no_of_stops_title": "2 Stop Flight", "no_of_stops": 2, "flight_time": "PT11H5M", "transit_time": "PT11H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o21", "productId": "p115", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:40:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "AUH", "arrival_time": "2026-07-30T19:40:00", "destination_terminal": "A", "destination_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "flight_date": "2026-07-30", "flight_time": "PT8H0M", "distance": 2896, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "781", "name": "Boeing 787-10", "picture": "781.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "booking_class": { "cabin_class": "Economy Value", "cabin_code": "YVALUE", "booking_code": "YVALUE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 40, "unit": "kg", "title": "40 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "AUH", "departure_time": "2026-07-31T02:05:00", "origin_terminal": "A", "origin_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "destination": "CMN", "arrival_time": "2026-07-31T07:20:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT5H15M", "distance": 3751, "lay_over": "PT06H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "351", "name": "Airbus", "picture": "351.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "booking_class": { "cabin_class": "Economy Value", "cabin_code": "YVALUE", "booking_code": "YVALUE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 40, "unit": "kg", "title": "40 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-31T12:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T13:05:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT04H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "4218" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "4218" }, "booking_class": { "cabin_class": "Economy Value", "cabin_code": "YVALUE", "booking_code": "YVALUE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 40, "unit": "kg", "title": "40 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 815.24, "gross_total": 815.24, "base_fare": 571, "tax": 244.24, "sell": { "currency": "EUR", "total": 815.24, "base_fare": 571, "tax": 244.24 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODE1LjI0LCJiYXNlX2ZhcmUiOjU3MSwidGF4IjoyNDQuMjR9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo4MTUuMjQsImJhc2VfZmFyZSI6NTcxLCJ0YXgiOjI0NC4yNCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo4MTUuMjQsImJhc2VfZmFyZSI6NTcxLCJ0YXgiOjI0NC4yNH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 815.24, "base_fare": 571, "tax": 244.24, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "571.00", "tax": "244.24", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 815.24, "base_fare": 571, "tax": 244.24, "gross": { "base_fare": "571.00", "tax": "244.24", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjgxNS4yNCIsImJhc2VfZmFyZSI6IjU3MS4wMCIsInRheCI6IjI0NC4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU3MS4wMCIsInRheCI6IjI0NC4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjgxNS4yNCIsImJhc2VfZmFyZSI6IjU3MS4wMCIsInRheCI6IjI0NC4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU3MS4wMCIsInRheCI6IjI0NC4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjgxNS4yNCIsImJhc2VfZmFyZSI6IjU3MS4wMCIsInRheCI6IjI0NC4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo4MTUuMjQsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 815.24, "filter": { "id": "F1MS00008-98", "price": 815.24, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "EY", "carrier_marketing": "EY", "aircraft": "781", "aircraft_name": "Boeing 787-10", "cabin_class": "Economy Value", "connecting_airport": [ "AUH", "CMN" ], "total_segment_count": 3, "no_of_stops": 2, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:40:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T13:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301140auh20260730194082auh202607310205cmn202607310720757cmn202607311200rak2026073113054218", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-99", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-99", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H0M", "transit_time": "PT8H0M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o11", "productId": "p74", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T12:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BIZFLEX", "booking_code": "BIZFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T20:55:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T23:15:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 1312, "lay_over": "PT08H00M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BIZFLEX", "booking_code": "BIZFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 822.27, "gross_total": 822.27, "base_fare": 747, "tax": 75.27, "sell": { "currency": "EUR", "total": 822.27, "base_fare": 747, "tax": 75.27 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODIyLjI3LCJiYXNlX2ZhcmUiOjc0NywidGF4Ijo3NS4yN30sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjgyMi4yNywiYmFzZV9mYXJlIjo3NDcsInRheCI6NzUuMjcsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODIyLjI3LCJiYXNlX2ZhcmUiOjc0NywidGF4Ijo3NS4yN319", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 822.27, "base_fare": 747, "tax": 75.27, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "747.00", "tax": "75.27", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 822.27, "base_fare": 747, "tax": 75.27, "gross": { "base_fare": "747.00", "tax": "75.27", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjgyMi4yNyIsImJhc2VfZmFyZSI6Ijc0Ny4wMCIsInRheCI6Ijc1LjI3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzQ3LjAwIiwidGF4IjoiNzUuMjciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI4MjIuMjciLCJiYXNlX2ZhcmUiOiI3NDcuMDAiLCJ0YXgiOiI3NS4yNyIsImdyb3NzIjp7ImJhc2VfZmFyZSI6Ijc0Ny4wMCIsInRheCI6Ijc1LjI3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiODIyLjI3IiwiYmFzZV9mYXJlIjoiNzQ3LjAwIiwidGF4IjoiNzUuMjciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6ODIyLjI3LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 822.27, "filter": { "id": "F1MS00008-99", "price": 822.27, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Business Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:25:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301125cdg2026073012551331cdg202607302055rak2026073023151776", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-100", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-100", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H30M", "transit_time": "PT12H30M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o16", "productId": "p91", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T08:25:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H40M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BIZFLEX", "booking_code": "BIZFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T20:55:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T23:15:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H20M", "distance": 1312, "lay_over": "PT12H30M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1776" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BIZFLEX", "booking_code": "BIZFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 833.26, "gross_total": 833.26, "base_fare": 747, "tax": 86.26, "sell": { "currency": "EUR", "total": 833.26, "base_fare": 747, "tax": 86.26 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODMzLjI2LCJiYXNlX2ZhcmUiOjc0NywidGF4Ijo4Ni4yNn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjgzMy4yNiwiYmFzZV9mYXJlIjo3NDcsInRheCI6ODYuMjYsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODMzLjI2LCJiYXNlX2ZhcmUiOjc0NywidGF4Ijo4Ni4yNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 833.26, "base_fare": 747, "tax": 86.26, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "747.00", "tax": "86.26", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 833.26, "base_fare": 747, "tax": 86.26, "gross": { "base_fare": "747.00", "tax": "86.26", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjgzMy4yNiIsImJhc2VfZmFyZSI6Ijc0Ny4wMCIsInRheCI6Ijg2LjI2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzQ3LjAwIiwidGF4IjoiODYuMjYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI4MzMuMjYiLCJiYXNlX2ZhcmUiOiI3NDcuMDAiLCJ0YXgiOiI4Ni4yNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6Ijc0Ny4wMCIsInRheCI6Ijg2LjI2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiODMzLjI2IiwiYmFzZV9mYXJlIjoiNzQ3LjAwIiwidGF4IjoiODYuMjYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6ODMzLjI2LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 833.26, "filter": { "id": "F1MS00008-100", "price": 833.26, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Business Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:45:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T23:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300645cdg2026073008251131cdg202607302055rak2026073023151776", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-101", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-101", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT23H35M", "transit_time": "PT23H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o17", "productId": "p96", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T12:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1331" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BIZFLEX", "booking_code": "BIZFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-31T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-31T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT23H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BIZFLEX", "booking_code": "BIZFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 833.26, "gross_total": 833.26, "base_fare": 747, "tax": 86.26, "sell": { "currency": "EUR", "total": 833.26, "base_fare": 747, "tax": 86.26 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODMzLjI2LCJiYXNlX2ZhcmUiOjc0NywidGF4Ijo4Ni4yNn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjgzMy4yNiwiYmFzZV9mYXJlIjo3NDcsInRheCI6ODYuMjYsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODMzLjI2LCJiYXNlX2ZhcmUiOjc0NywidGF4Ijo4Ni4yNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 833.26, "base_fare": 747, "tax": 86.26, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "747.00", "tax": "86.26", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 833.26, "base_fare": 747, "tax": 86.26, "gross": { "base_fare": "747.00", "tax": "86.26", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjgzMy4yNiIsImJhc2VfZmFyZSI6Ijc0Ny4wMCIsInRheCI6Ijg2LjI2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzQ3LjAwIiwidGF4IjoiODYuMjYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI4MzMuMjYiLCJiYXNlX2ZhcmUiOiI3NDcuMDAiLCJ0YXgiOiI4Ni4yNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6Ijc0Ny4wMCIsInRheCI6Ijg2LjI2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiODMzLjI2IiwiYmFzZV9mYXJlIjoiNzQ3LjAwIiwidGF4IjoiODYuMjYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6ODMzLjI2LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 833.26, "filter": { "id": "F1MS00008-101", "price": 833.26, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Business Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301125cdg2026073012551331cdg202607311230rak2026073114551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-102", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-102", "get_branded_fare": "no", "no_of_stops_title": "2 Stop Flight", "no_of_stops": 2, "flight_time": "PT11H5M", "transit_time": "PT11H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o21", "productId": "p116", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:40:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "AUH", "arrival_time": "2026-07-30T19:40:00", "destination_terminal": "A", "destination_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "flight_date": "2026-07-30", "flight_time": "PT8H0M", "distance": 2896, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "781", "name": "Boeing 787-10", "picture": "781.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "booking_class": { "cabin_class": "Economy Comfort", "cabin_code": "YCOMFORT", "booking_code": "YCOMFORT", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 45, "unit": "kg", "title": "45 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "AUH", "departure_time": "2026-07-31T02:05:00", "origin_terminal": "A", "origin_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "destination": "CMN", "arrival_time": "2026-07-31T07:20:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT5H15M", "distance": 3751, "lay_over": "PT06H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "351", "name": "Airbus", "picture": "351.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "booking_class": { "cabin_class": "Economy Comfort", "cabin_code": "YCOMFORT", "booking_code": "YCOMFORT", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 45, "unit": "kg", "title": "45 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-31T12:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T13:05:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT04H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "4218" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "4218" }, "booking_class": { "cabin_class": "Economy Comfort", "cabin_code": "YCOMFORT", "booking_code": "YCOMFORT", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 45, "unit": "kg", "title": "45 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 861.24, "gross_total": 861.24, "base_fare": 617, "tax": 244.24, "sell": { "currency": "EUR", "total": 861.24, "base_fare": 617, "tax": 244.24 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODYxLjI0LCJiYXNlX2ZhcmUiOjYxNywidGF4IjoyNDQuMjR9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo4NjEuMjQsImJhc2VfZmFyZSI6NjE3LCJ0YXgiOjI0NC4yNCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo4NjEuMjQsImJhc2VfZmFyZSI6NjE3LCJ0YXgiOjI0NC4yNH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 861.24, "base_fare": 617, "tax": 244.24, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "617.00", "tax": "244.24", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 861.24, "base_fare": 617, "tax": 244.24, "gross": { "base_fare": "617.00", "tax": "244.24", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijg2MS4yNCIsImJhc2VfZmFyZSI6IjYxNy4wMCIsInRheCI6IjI0NC4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjYxNy4wMCIsInRheCI6IjI0NC4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijg2MS4yNCIsImJhc2VfZmFyZSI6IjYxNy4wMCIsInRheCI6IjI0NC4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjYxNy4wMCIsInRheCI6IjI0NC4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijg2MS4yNCIsImJhc2VfZmFyZSI6IjYxNy4wMCIsInRheCI6IjI0NC4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo4NjEuMjQsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 861.24, "filter": { "id": "F1MS00008-102", "price": 861.24, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "EY", "carrier_marketing": "EY", "aircraft": "781", "aircraft_name": "Boeing 787-10", "cabin_class": "Economy Comfort", "connecting_airport": [ "AUH", "CMN" ], "total_segment_count": 3, "no_of_stops": 2, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:40:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T13:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301140auh20260730194082auh202607310205cmn202607310720757cmn202607311200rak2026073113054218", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-103", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-103", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT18H25M", "transit_time": "PT18H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o7", "productId": "p54", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T14:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T16:50:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "674" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "674" }, "booking_class": { "cabin_class": "Fully Flexible", "cabin_code": "FULLFLEX", "booking_code": "FULLFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT18H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Fully Flexible", "cabin_code": "FULLFLEX", "booking_code": "FULLFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 877.81, "gross_total": 877.81, "base_fare": 830, "tax": 47.81, "sell": { "currency": "EUR", "total": 877.81, "base_fare": 830, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODc3LjgxLCJiYXNlX2ZhcmUiOjgzMCwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjg3Ny44MSwiYmFzZV9mYXJlIjo4MzAsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODc3LjgxLCJiYXNlX2ZhcmUiOjgzMCwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 877.81, "base_fare": 830, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "830.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 877.81, "base_fare": 830, "tax": 47.81, "gross": { "base_fare": "830.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijg3Ny44MSIsImJhc2VfZmFyZSI6IjgzMC4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODMwLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI4NzcuODEiLCJiYXNlX2ZhcmUiOiI4MzAuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjgzMC4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiODc3LjgxIiwiYmFzZV9mYXJlIjoiODMwLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6ODc3LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 877.81, "filter": { "id": "F1MS00008-103", "price": 877.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Fully Flexible", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T14:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301425mad202607301650674mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-104", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-104", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT22H25M", "transit_time": "PT22H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o7", "productId": "p55", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T10:25:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T12:50:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "672" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "672" }, "booking_class": { "cabin_class": "Fully Flexible", "cabin_code": "FULLFLEX", "booking_code": "FULLFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT22H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Fully Flexible", "cabin_code": "FULLFLEX", "booking_code": "FULLFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 877.81, "gross_total": 877.81, "base_fare": 830, "tax": 47.81, "sell": { "currency": "EUR", "total": 877.81, "base_fare": 830, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODc3LjgxLCJiYXNlX2ZhcmUiOjgzMCwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjg3Ny44MSwiYmFzZV9mYXJlIjo4MzAsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODc3LjgxLCJiYXNlX2ZhcmUiOjgzMCwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 877.81, "base_fare": 830, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "830.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 877.81, "base_fare": 830, "tax": 47.81, "gross": { "base_fare": "830.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijg3Ny44MSIsImJhc2VfZmFyZSI6IjgzMC4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODMwLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI4NzcuODEiLCJiYXNlX2ZhcmUiOiI4MzAuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjgzMC4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiODc3LjgxIiwiYmFzZV9mYXJlIjoiODMwLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6ODc3LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 877.81, "filter": { "id": "F1MS00008-104", "price": 877.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Fully Flexible", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T10:25:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301025mad202607301250672mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-105", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-105", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT13H45M", "transit_time": "PT13H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o8", "productId": "p61", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T19:05:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "MAD", "arrival_time": "2026-07-30T21:30:00", "destination_terminal": "4", "destination_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 736, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "676" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "676" }, "booking_class": { "cabin_class": "Fully Flexible", "cabin_code": "FULLFLEX", "booking_code": "FULLFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "MAD", "departure_time": "2026-07-31T11:15:00", "origin_terminal": "4S", "origin_airport": { "name": "Adolfo Suarez Madrid-Barajas Airport", "city": "Madrid", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-31T12:15:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H0M", "distance": 661, "lay_over": "PT13H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "marketing": { "carrier": "IB", "carrier_name": "Iberia", "carrier_logo": "IB.png", "flight_number": "1851" }, "booking_class": { "cabin_class": "Fully Flexible", "cabin_code": "FULLFLEX", "booking_code": "FULLFLEX", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 1, "weight": 22.68, "unit": "kg", "title": "1 pieces 22.68 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 877.81, "gross_total": 877.81, "base_fare": 830, "tax": 47.81, "sell": { "currency": "EUR", "total": 877.81, "base_fare": 830, "tax": 47.81 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODc3LjgxLCJiYXNlX2ZhcmUiOjgzMCwidGF4Ijo0Ny44MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjg3Ny44MSwiYmFzZV9mYXJlIjo4MzAsInRheCI6NDcuODEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6ODc3LjgxLCJiYXNlX2ZhcmUiOjgzMCwidGF4Ijo0Ny44MX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 877.81, "base_fare": 830, "tax": 47.81, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "830.00", "tax": "47.81", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 877.81, "base_fare": 830, "tax": 47.81, "gross": { "base_fare": "830.00", "tax": "47.81", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijg3Ny44MSIsImJhc2VfZmFyZSI6IjgzMC4wMCIsInRheCI6IjQ3LjgxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODMwLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI4NzcuODEiLCJiYXNlX2ZhcmUiOiI4MzAuMDAiLCJ0YXgiOiI0Ny44MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjgzMC4wMCIsInRheCI6IjQ3LjgxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiODc3LjgxIiwiYmFzZV9mYXJlIjoiODMwLjAwIiwidGF4IjoiNDcuODEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6ODc3LjgxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 877.81, "filter": { "id": "F1MS00008-105", "price": 877.81, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "IB", "carrier_marketing": "IB", "aircraft": "320", "aircraft_name": "Airbus A320", "cabin_class": "Fully Flexible", "connecting_airport": [ "MAD" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T19:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T12:15:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301905mad202607302130676mad202607311115rak2026073112151851", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-106", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-106", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT4H5M", "transit_time": "PT4H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o15", "productId": "p85", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T08:25:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H40M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BIZSTAND", "booking_code": "BIZSTAND", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT04H05M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BIZSTAND", "booking_code": "BIZSTAND", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 902.27, "gross_total": 902.27, "base_fare": 827, "tax": 75.27, "sell": { "currency": "EUR", "total": 902.27, "base_fare": 827, "tax": 75.27 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAyLjI3LCJiYXNlX2ZhcmUiOjgyNywidGF4Ijo3NS4yN30sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjkwMi4yNywiYmFzZV9mYXJlIjo4MjcsInRheCI6NzUuMjcsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAyLjI3LCJiYXNlX2ZhcmUiOjgyNywidGF4Ijo3NS4yN319", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 902.27, "base_fare": 827, "tax": 75.27, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "827.00", "tax": "75.27", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 902.27, "base_fare": 827, "tax": 75.27, "gross": { "base_fare": "827.00", "tax": "75.27", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMi4yNyIsImJhc2VfZmFyZSI6IjgyNy4wMCIsInRheCI6Ijc1LjI3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODI3LjAwIiwidGF4IjoiNzUuMjciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI5MDIuMjciLCJiYXNlX2ZhcmUiOiI4MjcuMDAiLCJ0YXgiOiI3NS4yNyIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjgyNy4wMCIsInRheCI6Ijc1LjI3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiOTAyLjI3IiwiYmFzZV9mYXJlIjoiODI3LjAwIiwidGF4IjoiNzUuMjciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6OTAyLjI3LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 902.27, "filter": { "id": "F1MS00008-106", "price": 902.27, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Business Standard", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:45:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-30T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300645cdg2026073008251131cdg202607301230rak2026073014551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-107", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-107", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT16H25M", "transit_time": "PT16H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o19", "productId": "p103", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:35:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T20:05:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "223", "name": "Airbus A220-300", "picture": "223.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1731" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1731" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BIZSTAND", "booking_code": "BIZSTAND", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-31T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-31T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT16H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Business Standard", "cabin_code": "BIZSTAND", "booking_code": "BIZSTAND", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 913.26, "gross_total": 913.26, "base_fare": 827, "tax": 86.26, "sell": { "currency": "EUR", "total": 913.26, "base_fare": 827, "tax": 86.26 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTEzLjI2LCJiYXNlX2ZhcmUiOjgyNywidGF4Ijo4Ni4yNn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjkxMy4yNiwiYmFzZV9mYXJlIjo4MjcsInRheCI6ODYuMjYsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTEzLjI2LCJiYXNlX2ZhcmUiOjgyNywidGF4Ijo4Ni4yNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 913.26, "base_fare": 827, "tax": 86.26, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "827.00", "tax": "86.26", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 913.26, "base_fare": 827, "tax": 86.26, "gross": { "base_fare": "827.00", "tax": "86.26", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkxMy4yNiIsImJhc2VfZmFyZSI6IjgyNy4wMCIsInRheCI6Ijg2LjI2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODI3LjAwIiwidGF4IjoiODYuMjYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI5MTMuMjYiLCJiYXNlX2ZhcmUiOiI4MjcuMDAiLCJ0YXgiOiI4Ni4yNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjgyNy4wMCIsInRheCI6Ijg2LjI2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiOTEzLjI2IiwiYmFzZV9mYXJlIjoiODI3LjAwIiwidGF4IjoiODYuMjYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6OTEzLjI2LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 913.26, "filter": { "id": "F1MS00008-107", "price": 913.26, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "223", "aircraft_name": "Airbus A220-300", "cabin_class": "Business Standard", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:35:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301835cdg2026073020051731cdg202607311230rak2026073114551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-108", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-108", "get_branded_fare": "no", "no_of_stops_title": "2 Stop Flight", "no_of_stops": 2, "flight_time": "PT11H5M", "transit_time": "PT11H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o21", "productId": "p117", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:40:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "AUH", "arrival_time": "2026-07-30T19:40:00", "destination_terminal": "A", "destination_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "flight_date": "2026-07-30", "flight_time": "PT8H0M", "distance": 2896, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "781", "name": "Boeing 787-10", "picture": "781.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "booking_class": { "cabin_class": "Economy Deluxe", "cabin_code": "YDELUXE", "booking_code": "YDELUXE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 45, "unit": "kg", "title": "45 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "AUH", "departure_time": "2026-07-31T02:05:00", "origin_terminal": "A", "origin_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "destination": "CMN", "arrival_time": "2026-07-31T07:20:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT5H15M", "distance": 3751, "lay_over": "PT06H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "351", "name": "Airbus", "picture": "351.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "booking_class": { "cabin_class": "Economy Deluxe", "cabin_code": "YDELUXE", "booking_code": "YDELUXE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 45, "unit": "kg", "title": "45 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-31T12:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T13:05:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT04H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "4218" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "4218" }, "booking_class": { "cabin_class": "Economy Deluxe", "cabin_code": "YDELUXE", "booking_code": "YDELUXE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 45, "unit": "kg", "title": "45 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 919.24, "gross_total": 919.24, "base_fare": 675, "tax": 244.24, "sell": { "currency": "EUR", "total": 919.24, "base_fare": 675, "tax": 244.24 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTE5LjI0LCJiYXNlX2ZhcmUiOjY3NSwidGF4IjoyNDQuMjR9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MTkuMjQsImJhc2VfZmFyZSI6Njc1LCJ0YXgiOjI0NC4yNCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MTkuMjQsImJhc2VfZmFyZSI6Njc1LCJ0YXgiOjI0NC4yNH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 919.24, "base_fare": 675, "tax": 244.24, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "675.00", "tax": "244.24", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 919.24, "base_fare": 675, "tax": 244.24, "gross": { "base_fare": "675.00", "tax": "244.24", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkxOS4yNCIsImJhc2VfZmFyZSI6IjY3NS4wMCIsInRheCI6IjI0NC4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjY3NS4wMCIsInRheCI6IjI0NC4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkxOS4yNCIsImJhc2VfZmFyZSI6IjY3NS4wMCIsInRheCI6IjI0NC4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjY3NS4wMCIsInRheCI6IjI0NC4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkxOS4yNCIsImJhc2VfZmFyZSI6IjY3NS4wMCIsInRheCI6IjI0NC4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MTkuMjQsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 919.24, "filter": { "id": "F1MS00008-108", "price": 919.24, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "EY", "carrier_marketing": "EY", "aircraft": "781", "aircraft_name": "Boeing 787-10", "cabin_class": "Economy Deluxe", "connecting_airport": [ "AUH", "CMN" ], "total_segment_count": 3, "no_of_stops": 2, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:40:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T13:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301140auh20260730194082auh202607310205cmn202607310720757cmn202607311200rak2026073113054218", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-109", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-109", "get_branded_fare": "no", "no_of_stops_title": "2 Stop Flight", "no_of_stops": 2, "flight_time": "PT11H5M", "transit_time": "PT11H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o22", "productId": "p119", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:40:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "AUH", "arrival_time": "2026-07-30T19:40:00", "destination_terminal": "A", "destination_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "flight_date": "2026-07-30", "flight_time": "PT8H0M", "distance": 2896, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "781", "name": "Boeing 787-10", "picture": "781.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "booking_class": { "cabin_class": "Economy Basic", "cabin_code": "YBASIC", "booking_code": "YBASIC", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": null, "unit": "kg", "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "AUH", "departure_time": "2026-07-31T02:05:00", "origin_terminal": "A", "origin_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "destination": "CMN", "arrival_time": "2026-07-31T07:20:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT5H15M", "distance": 3751, "lay_over": "PT06H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "351", "name": "Airbus", "picture": "351.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "booking_class": { "cabin_class": "Economy Basic", "cabin_code": "YBASIC", "booking_code": "YBASIC", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": null, "unit": "kg", "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-31T12:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T13:05:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT04H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "411" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "411" }, "booking_class": { "cabin_class": "Economy Basic", "cabin_code": "YBASIC", "booking_code": "YBASIC", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": null, "unit": "kg", "title": "" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 947.24, "gross_total": 947.24, "base_fare": 561, "tax": 386.24, "sell": { "currency": "EUR", "total": 947.24, "base_fare": 561, "tax": 386.24 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTQ3LjI0LCJiYXNlX2ZhcmUiOjU2MSwidGF4IjozODYuMjR9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5NDcuMjQsImJhc2VfZmFyZSI6NTYxLCJ0YXgiOjM4Ni4yNCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5NDcuMjQsImJhc2VfZmFyZSI6NTYxLCJ0YXgiOjM4Ni4yNH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 947.24, "base_fare": 561, "tax": 386.24, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "561.00", "tax": "386.24", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 947.24, "base_fare": 561, "tax": 386.24, "gross": { "base_fare": "561.00", "tax": "386.24", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijk0Ny4yNCIsImJhc2VfZmFyZSI6IjU2MS4wMCIsInRheCI6IjM4Ni4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU2MS4wMCIsInRheCI6IjM4Ni4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijk0Ny4yNCIsImJhc2VfZmFyZSI6IjU2MS4wMCIsInRheCI6IjM4Ni4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU2MS4wMCIsInRheCI6IjM4Ni4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijk0Ny4yNCIsImJhc2VfZmFyZSI6IjU2MS4wMCIsInRheCI6IjM4Ni4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5NDcuMjQsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 947.24, "filter": { "id": "F1MS00008-109", "price": 947.24, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "EY", "carrier_marketing": "EY", "aircraft": "781", "aircraft_name": "Boeing 787-10", "cabin_class": "Economy Basic", "connecting_airport": [ "AUH", "CMN" ], "total_segment_count": 3, "no_of_stops": 2, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:40:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T13:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301140auh20260730194082auh202607310205cmn202607310720757cmn202607311200rak202607311305411", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-110", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-110", "get_branded_fare": "no", "no_of_stops_title": "2 Stop Flight", "no_of_stops": 2, "flight_time": "PT11H5M", "transit_time": "PT11H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o22", "productId": "p120", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:40:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "AUH", "arrival_time": "2026-07-30T19:40:00", "destination_terminal": "A", "destination_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "flight_date": "2026-07-30", "flight_time": "PT8H0M", "distance": 2896, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "781", "name": "Boeing 787-10", "picture": "781.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "booking_class": { "cabin_class": "Economy Value", "cabin_code": "YVALUE", "booking_code": "YVALUE", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 40, "unit": "kg", "title": "40 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "AUH", "departure_time": "2026-07-31T02:05:00", "origin_terminal": "A", "origin_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "destination": "CMN", "arrival_time": "2026-07-31T07:20:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT5H15M", "distance": 3751, "lay_over": "PT06H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "351", "name": "Airbus", "picture": "351.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "booking_class": { "cabin_class": "Economy Value", "cabin_code": "YVALUE", "booking_code": "YVALUE", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 40, "unit": "kg", "title": "40 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-31T12:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T13:05:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT04H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "411" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "411" }, "booking_class": { "cabin_class": "Economy Value", "cabin_code": "YVALUE", "booking_code": "YVALUE", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 40, "unit": "kg", "title": "40 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 957.24, "gross_total": 957.24, "base_fare": 571, "tax": 386.24, "sell": { "currency": "EUR", "total": 957.24, "base_fare": 571, "tax": 386.24 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTU3LjI0LCJiYXNlX2ZhcmUiOjU3MSwidGF4IjozODYuMjR9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5NTcuMjQsImJhc2VfZmFyZSI6NTcxLCJ0YXgiOjM4Ni4yNCwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5NTcuMjQsImJhc2VfZmFyZSI6NTcxLCJ0YXgiOjM4Ni4yNH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 957.24, "base_fare": 571, "tax": 386.24, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "571.00", "tax": "386.24", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 957.24, "base_fare": 571, "tax": 386.24, "gross": { "base_fare": "571.00", "tax": "386.24", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijk1Ny4yNCIsImJhc2VfZmFyZSI6IjU3MS4wMCIsInRheCI6IjM4Ni4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU3MS4wMCIsInRheCI6IjM4Ni4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijk1Ny4yNCIsImJhc2VfZmFyZSI6IjU3MS4wMCIsInRheCI6IjM4Ni4yNCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjU3MS4wMCIsInRheCI6IjM4Ni4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijk1Ny4yNCIsImJhc2VfZmFyZSI6IjU3MS4wMCIsInRheCI6IjM4Ni4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5NTcuMjQsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 957.24, "filter": { "id": "F1MS00008-110", "price": 957.24, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "EY", "carrier_marketing": "EY", "aircraft": "781", "aircraft_name": "Boeing 787-10", "cabin_class": "Economy Value", "connecting_airport": [ "AUH", "CMN" ], "total_segment_count": 3, "no_of_stops": 2, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:40:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T13:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301140auh20260730194082auh202607310205cmn202607310720757cmn202607311200rak202607311305411", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-111", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-111", "get_branded_fare": "no", "no_of_stops_title": "2 Stop Flight", "no_of_stops": 2, "flight_time": "PT11H5M", "transit_time": "PT11H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o22", "productId": "p121", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:40:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "AUH", "arrival_time": "2026-07-30T19:40:00", "destination_terminal": "A", "destination_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "flight_date": "2026-07-30", "flight_time": "PT8H0M", "distance": 2896, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "781", "name": "Boeing 787-10", "picture": "781.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "booking_class": { "cabin_class": "Economy Comfort", "cabin_code": "YCOMFORT", "booking_code": "YCOMFORT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 45, "unit": "kg", "title": "45 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "AUH", "departure_time": "2026-07-31T02:05:00", "origin_terminal": "A", "origin_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "destination": "CMN", "arrival_time": "2026-07-31T07:20:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT5H15M", "distance": 3751, "lay_over": "PT06H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "351", "name": "Airbus", "picture": "351.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "booking_class": { "cabin_class": "Economy Comfort", "cabin_code": "YCOMFORT", "booking_code": "YCOMFORT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 45, "unit": "kg", "title": "45 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-31T12:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T13:05:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT04H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "411" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "411" }, "booking_class": { "cabin_class": "Economy Comfort", "cabin_code": "YCOMFORT", "booking_code": "YCOMFORT", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 45, "unit": "kg", "title": "45 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1003.24, "gross_total": 1003.24, "base_fare": 617, "tax": 386.24, "sell": { "currency": "EUR", "total": 1003.24, "base_fare": 617, "tax": 386.24 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTAwMy4yNCwiYmFzZV9mYXJlIjo2MTcsInRheCI6Mzg2LjI0fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTAwMy4yNCwiYmFzZV9mYXJlIjo2MTcsInRheCI6Mzg2LjI0LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjEwMDMuMjQsImJhc2VfZmFyZSI6NjE3LCJ0YXgiOjM4Ni4yNH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1003.24, "base_fare": 617, "tax": 386.24, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "617.00", "tax": "386.24", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1003.24, "base_fare": 617, "tax": 386.24, "gross": { "base_fare": "617.00", "tax": "386.24", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjEwMDMuMjQiLCJiYXNlX2ZhcmUiOiI2MTcuMDAiLCJ0YXgiOiIzODYuMjQiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI2MTcuMDAiLCJ0YXgiOiIzODYuMjQiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMDAzLjI0IiwiYmFzZV9mYXJlIjoiNjE3LjAwIiwidGF4IjoiMzg2LjI0IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNjE3LjAwIiwidGF4IjoiMzg2LjI0IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTAwMy4yNCIsImJhc2VfZmFyZSI6IjYxNy4wMCIsInRheCI6IjM4Ni4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMDAzLjI0LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1003.24, "filter": { "id": "F1MS00008-111", "price": 1003.24, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "EY", "carrier_marketing": "EY", "aircraft": "781", "aircraft_name": "Boeing 787-10", "cabin_class": "Economy Comfort", "connecting_airport": [ "AUH", "CMN" ], "total_segment_count": 3, "no_of_stops": 2, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:40:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T13:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301140auh20260730194082auh202607310205cmn202607310720757cmn202607311200rak202607311305411", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-112", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-112", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT4H5M", "transit_time": "PT4H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o15", "productId": "p86", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T08:25:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H40M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1131" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BIZFLEX", "booking_code": "BIZFLEX", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-30T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-30T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT04H05M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BIZFLEX", "booking_code": "BIZFLEX", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1012.27, "gross_total": 1012.27, "base_fare": 937, "tax": 75.27, "sell": { "currency": "EUR", "total": 1012.27, "base_fare": 937, "tax": 75.27 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTAxMi4yNywiYmFzZV9mYXJlIjo5MzcsInRheCI6NzUuMjd9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoxMDEyLjI3LCJiYXNlX2ZhcmUiOjkzNywidGF4Ijo3NS4yNywiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoxMDEyLjI3LCJiYXNlX2ZhcmUiOjkzNywidGF4Ijo3NS4yN319", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1012.27, "base_fare": 937, "tax": 75.27, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "937.00", "tax": "75.27", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1012.27, "base_fare": 937, "tax": 75.27, "gross": { "base_fare": "937.00", "tax": "75.27", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjEwMTIuMjciLCJiYXNlX2ZhcmUiOiI5MzcuMDAiLCJ0YXgiOiI3NS4yNyIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjkzNy4wMCIsInRheCI6Ijc1LjI3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCJ9LCJjb25maWciOnsibWFya3VwX3R5cGUiOm51bGwsIm1hcmt1cF90aXRsZSI6bnVsbCwicmV2ZW51ZSI6IjAuMDAiLCJ0aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsInRvdGFsX3RpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwiY3VycmVuY3lFeGNoYW5nZVJhdGUiOiIxLjAwIiwiRk1HX092ZXJ3cml0ZVJ1bGVzIjpbXX19LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTAxMi4yNyIsImJhc2VfZmFyZSI6IjkzNy4wMCIsInRheCI6Ijc1LjI3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiOTM3LjAwIiwidGF4IjoiNzUuMjciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOjAsInBlcl9zZWdtZW50X2Rpc2NvdW50IjowLCJzZWdtZW50X2Rpc2NvdW50IjoiMC4wMCIsInN1cHBsaWVyX3NlZ21lbnRfZmVlc0NhbGN1bGF0ZSI6bnVsbCwic2VnbWVudF9kaXNjb3VudF9hY2NvdW50UHVycG9zZSI6bnVsbH19LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMDEyLjI3IiwiYmFzZV9mYXJlIjoiOTM3LjAwIiwidGF4IjoiNzUuMjciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MTAxMi4yNywidGF4QnJlYWtkb3duIjp7IkJEIjp7ImFtb3VudCI6IjAuMDAifSwiVVQiOnsiYW1vdW50IjoiMC4wMCJ9LCJFNSI6eyJhbW91bnQiOiIwLjAwIn0sIllRIjp7ImFtb3VudCI6IjAuMDAifSwiWVIiOnsiYW1vdW50IjoiMC4wMCJ9LCJPdGhlciI6eyJhbW91bnQiOiIwLjAwIn0sInN1cHBsaWVyVGF4RGF0YSI6W119fSwiZGlzY291bnRfY29taXNzaW9uX3RpdGxlIjpudWxsLCJkaXNjb3VudF9jb21pc3Npb25fcmF0aW8iOjAsImR5bmFtaWNfbWFya3VwX3R5cGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3RpdGxlIjpudWxsLCJkeW5hbWljX21hcmt1cF9yYXRpbyI6bnVsbCwiYXBwbGljYWJsZV9jb21pc3Npb24iOm51bGwsImFwcGxpY2FibGVfZHluYW1pY19tYXJrdXAiOm51bGx9" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1012.27, "filter": { "id": "F1MS00008-112", "price": 1012.27, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "32A", "aircraft_name": "Airbus A320", "cabin_class": "Business Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:45:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-30T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300645cdg2026073008251131cdg202607301230rak2026073014551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-113", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-113", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT16H25M", "transit_time": "PT16H25M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o19", "productId": "p104", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T18:35:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-07-30T20:05:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-07-30", "flight_time": "PT1H30M", "distance": 392, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "223", "name": "Airbus A220-300", "picture": "223.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1731" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1731" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BIZFLEX", "booking_code": "BIZFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "CDG", "departure_time": "2026-07-31T12:30:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "RAK", "arrival_time": "2026-07-31T14:55:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT2H25M", "distance": 1312, "lay_over": "PT16H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "320", "name": "Airbus A320", "picture": "320.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1076" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BIZFLEX", "booking_code": "BIZFLEX", "meal_code": null, "seat_available": 1 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1023.26, "gross_total": 1023.26, "base_fare": 937, "tax": 86.26, "sell": { "currency": "EUR", "total": 1023.26, "base_fare": 937, "tax": 86.26 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTAyMy4yNiwiYmFzZV9mYXJlIjo5MzcsInRheCI6ODYuMjZ9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoxMDIzLjI2LCJiYXNlX2ZhcmUiOjkzNywidGF4Ijo4Ni4yNiwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoxMDIzLjI2LCJiYXNlX2ZhcmUiOjkzNywidGF4Ijo4Ni4yNn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1023.26, "base_fare": 937, "tax": 86.26, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "937.00", "tax": "86.26", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1023.26, "base_fare": 937, "tax": 86.26, "gross": { "base_fare": "937.00", "tax": "86.26", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjEwMjMuMjYiLCJiYXNlX2ZhcmUiOiI5MzcuMDAiLCJ0YXgiOiI4Ni4yNiIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjkzNy4wMCIsInRheCI6Ijg2LjI2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCJ9LCJjb25maWciOnsibWFya3VwX3R5cGUiOm51bGwsIm1hcmt1cF90aXRsZSI6bnVsbCwicmV2ZW51ZSI6IjAuMDAiLCJ0aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsInRvdGFsX3RpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwiY3VycmVuY3lFeGNoYW5nZVJhdGUiOiIxLjAwIiwiRk1HX092ZXJ3cml0ZVJ1bGVzIjpbXX19LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTAyMy4yNiIsImJhc2VfZmFyZSI6IjkzNy4wMCIsInRheCI6Ijg2LjI2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiOTM3LjAwIiwidGF4IjoiODYuMjYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOjAsInBlcl9zZWdtZW50X2Rpc2NvdW50IjowLCJzZWdtZW50X2Rpc2NvdW50IjoiMC4wMCIsInN1cHBsaWVyX3NlZ21lbnRfZmVlc0NhbGN1bGF0ZSI6bnVsbCwic2VnbWVudF9kaXNjb3VudF9hY2NvdW50UHVycG9zZSI6bnVsbH19LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMDIzLjI2IiwiYmFzZV9mYXJlIjoiOTM3LjAwIiwidGF4IjoiODYuMjYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6MTAyMy4yNiwidGF4QnJlYWtkb3duIjp7IkJEIjp7ImFtb3VudCI6IjAuMDAifSwiVVQiOnsiYW1vdW50IjoiMC4wMCJ9LCJFNSI6eyJhbW91bnQiOiIwLjAwIn0sIllRIjp7ImFtb3VudCI6IjAuMDAifSwiWVIiOnsiYW1vdW50IjoiMC4wMCJ9LCJPdGhlciI6eyJhbW91bnQiOiIwLjAwIn0sInN1cHBsaWVyVGF4RGF0YSI6W119fSwiZGlzY291bnRfY29taXNzaW9uX3RpdGxlIjpudWxsLCJkaXNjb3VudF9jb21pc3Npb25fcmF0aW8iOjAsImR5bmFtaWNfbWFya3VwX3R5cGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3RpdGxlIjpudWxsLCJkeW5hbWljX21hcmt1cF9yYXRpbyI6bnVsbCwiYXBwbGljYWJsZV9jb21pc3Npb24iOm51bGwsImFwcGxpY2FibGVfZHluYW1pY19tYXJrdXAiOm51bGx9" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1023.26, "filter": { "id": "F1MS00008-113", "price": 1023.26, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AF", "carrier_marketing": "AF", "aircraft": "223", "aircraft_name": "Airbus A220-300", "cabin_class": "Business Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T18:35:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T14:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301835cdg2026073020051731cdg202607311230rak2026073114551076", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-114", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-114", "get_branded_fare": "no", "no_of_stops_title": "2 Stop Flight", "no_of_stops": 2, "flight_time": "PT11H5M", "transit_time": "PT11H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o22", "productId": "p122", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:40:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "AUH", "arrival_time": "2026-07-30T19:40:00", "destination_terminal": "A", "destination_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "flight_date": "2026-07-30", "flight_time": "PT8H0M", "distance": 2896, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "781", "name": "Boeing 787-10", "picture": "781.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "booking_class": { "cabin_class": "Economy Deluxe", "cabin_code": "YDELUXE", "booking_code": "YDELUXE", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 45, "unit": "kg", "title": "45 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "AUH", "departure_time": "2026-07-31T02:05:00", "origin_terminal": "A", "origin_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "destination": "CMN", "arrival_time": "2026-07-31T07:20:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT5H15M", "distance": 3751, "lay_over": "PT06H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "351", "name": "Airbus", "picture": "351.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "booking_class": { "cabin_class": "Economy Deluxe", "cabin_code": "YDELUXE", "booking_code": "YDELUXE", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 45, "unit": "kg", "title": "45 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-31T12:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T13:05:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT04H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "411" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "411" }, "booking_class": { "cabin_class": "Economy Deluxe", "cabin_code": "YDELUXE", "booking_code": "YDELUXE", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 45, "unit": "kg", "title": "45 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1061.24, "gross_total": 1061.24, "base_fare": 675, "tax": 386.24, "sell": { "currency": "EUR", "total": 1061.24, "base_fare": 675, "tax": 386.24 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTA2MS4yNCwiYmFzZV9mYXJlIjo2NzUsInRheCI6Mzg2LjI0fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTA2MS4yNCwiYmFzZV9mYXJlIjo2NzUsInRheCI6Mzg2LjI0LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjEwNjEuMjQsImJhc2VfZmFyZSI6Njc1LCJ0YXgiOjM4Ni4yNH19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1061.24, "base_fare": 675, "tax": 386.24, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "675.00", "tax": "386.24", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1061.24, "base_fare": 675, "tax": 386.24, "gross": { "base_fare": "675.00", "tax": "386.24", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjEwNjEuMjQiLCJiYXNlX2ZhcmUiOiI2NzUuMDAiLCJ0YXgiOiIzODYuMjQiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI2NzUuMDAiLCJ0YXgiOiIzODYuMjQiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMDYxLjI0IiwiYmFzZV9mYXJlIjoiNjc1LjAwIiwidGF4IjoiMzg2LjI0IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNjc1LjAwIiwidGF4IjoiMzg2LjI0IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTA2MS4yNCIsImJhc2VfZmFyZSI6IjY3NS4wMCIsInRheCI6IjM4Ni4yNCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMDYxLjI0LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1061.24, "filter": { "id": "F1MS00008-114", "price": 1061.24, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "EY", "carrier_marketing": "EY", "aircraft": "781", "aircraft_name": "Boeing 787-10", "cabin_class": "Economy Deluxe", "connecting_airport": [ "AUH", "CMN" ], "total_segment_count": 3, "no_of_stops": 2, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:40:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T13:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301140auh20260730194082auh202607310205cmn202607310720757cmn202607311200rak202607311305411", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-115", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-115", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1H35M", "transit_time": "PT1H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o18", "productId": "p98", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:50:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "IST", "arrival_time": "2026-07-30T10:50:00", "destination_terminal": null, "destination_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "flight_date": "2026-07-30", "flight_time": "PT4H0M", "distance": 1036, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32Q", "name": "Airbus A321 NEO", "picture": "32Q.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1878" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1878" }, "booking_class": { "cabin_class": "Business Restricted", "cabin_code": "BX", "booking_code": "BX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "IST", "departure_time": "2026-07-30T12:25:00", "origin_terminal": null, "origin_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "destination": "RAK", "arrival_time": "2026-07-30T15:40:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT3H15M", "distance": 2141, "lay_over": "PT01H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "booking_class": { "cabin_class": "Business Restricted", "cabin_code": "BX", "booking_code": "BX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1186.86, "gross_total": 1186.86, "base_fare": 872, "tax": 314.86, "sell": { "currency": "EUR", "total": 1186.86, "base_fare": 872, "tax": 314.86 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE4Ni44NiwiYmFzZV9mYXJlIjo4NzIsInRheCI6MzE0Ljg2fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE4Ni44NiwiYmFzZV9mYXJlIjo4NzIsInRheCI6MzE0Ljg2LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExODYuODYsImJhc2VfZmFyZSI6ODcyLCJ0YXgiOjMxNC44Nn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1186.86, "base_fare": 872, "tax": 314.86, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "872.00", "tax": "314.86", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1186.86, "base_fare": 872, "tax": 314.86, "gross": { "base_fare": "872.00", "tax": "314.86", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExODYuODYiLCJiYXNlX2ZhcmUiOiI4NzIuMDAiLCJ0YXgiOiIzMTQuODYiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI4NzIuMDAiLCJ0YXgiOiIzMTQuODYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTg2Ljg2IiwiYmFzZV9mYXJlIjoiODcyLjAwIiwidGF4IjoiMzE0Ljg2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODcyLjAwIiwidGF4IjoiMzE0Ljg2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE4Ni44NiIsImJhc2VfZmFyZSI6Ijg3Mi4wMCIsInRheCI6IjMxNC44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTg2Ljg2LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1186.86, "filter": { "id": "F1MS00008-115", "price": 1186.86, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TK", "carrier_marketing": "TK", "aircraft": "32Q", "aircraft_name": "Airbus A321 NEO", "cabin_class": "Business Restricted", "connecting_airport": [ "IST" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:50:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-30T15:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300650ist2026073010501878ist202607301225rak202607301540619", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-116", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-116", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H45M", "transit_time": "PT3H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o20", "productId": "p108", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T10:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "IST", "arrival_time": "2026-07-30T14:40:00", "destination_terminal": null, "destination_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "flight_date": "2026-07-30", "flight_time": "PT3H55M", "distance": 1036, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1874" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1874" }, "booking_class": { "cabin_class": "Business Restricted", "cabin_code": "BX", "booking_code": "BX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "IST", "departure_time": "2026-07-30T18:25:00", "origin_terminal": null, "origin_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "destination": "RAK", "arrival_time": "2026-07-30T21:45:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT3H20M", "distance": 2141, "lay_over": "PT03H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "621" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "621" }, "booking_class": { "cabin_class": "Business Restricted", "cabin_code": "BX", "booking_code": "BX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1186.86, "gross_total": 1186.86, "base_fare": 872, "tax": 314.86, "sell": { "currency": "EUR", "total": 1186.86, "base_fare": 872, "tax": 314.86 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE4Ni44NiwiYmFzZV9mYXJlIjo4NzIsInRheCI6MzE0Ljg2fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE4Ni44NiwiYmFzZV9mYXJlIjo4NzIsInRheCI6MzE0Ljg2LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExODYuODYsImJhc2VfZmFyZSI6ODcyLCJ0YXgiOjMxNC44Nn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1186.86, "base_fare": 872, "tax": 314.86, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "872.00", "tax": "314.86", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1186.86, "base_fare": 872, "tax": 314.86, "gross": { "base_fare": "872.00", "tax": "314.86", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExODYuODYiLCJiYXNlX2ZhcmUiOiI4NzIuMDAiLCJ0YXgiOiIzMTQuODYiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI4NzIuMDAiLCJ0YXgiOiIzMTQuODYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTg2Ljg2IiwiYmFzZV9mYXJlIjoiODcyLjAwIiwidGF4IjoiMzE0Ljg2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODcyLjAwIiwidGF4IjoiMzE0Ljg2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE4Ni44NiIsImJhc2VfZmFyZSI6Ijg3Mi4wMCIsInRheCI6IjMxNC44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTg2Ljg2LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1186.86, "filter": { "id": "F1MS00008-116", "price": 1186.86, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TK", "carrier_marketing": "TK", "aircraft": "359", "aircraft_name": "Airbus A350-900", "cabin_class": "Business Restricted", "connecting_airport": [ "IST" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T10:45:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T21:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301045ist2026073014401874ist202607301825rak202607302145621", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-117", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-117", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H45M", "transit_time": "PT12H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o20", "productId": "p109", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T19:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "IST", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": null, "destination_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "flight_date": "2026-07-30", "flight_time": "PT3H55M", "distance": 1036, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "333", "name": "Airbus A330-300", "picture": "333.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1876" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1876" }, "booking_class": { "cabin_class": "Business Restricted", "cabin_code": "BX", "booking_code": "BX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "IST", "departure_time": "2026-07-31T12:25:00", "origin_terminal": null, "origin_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "destination": "RAK", "arrival_time": "2026-07-31T15:40:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT3H15M", "distance": 2141, "lay_over": "PT12H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "booking_class": { "cabin_class": "Business Restricted", "cabin_code": "BX", "booking_code": "BX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1186.86, "gross_total": 1186.86, "base_fare": 872, "tax": 314.86, "sell": { "currency": "EUR", "total": 1186.86, "base_fare": 872, "tax": 314.86 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE4Ni44NiwiYmFzZV9mYXJlIjo4NzIsInRheCI6MzE0Ljg2fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE4Ni44NiwiYmFzZV9mYXJlIjo4NzIsInRheCI6MzE0Ljg2LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExODYuODYsImJhc2VfZmFyZSI6ODcyLCJ0YXgiOjMxNC44Nn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1186.86, "base_fare": 872, "tax": 314.86, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "872.00", "tax": "314.86", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1186.86, "base_fare": 872, "tax": 314.86, "gross": { "base_fare": "872.00", "tax": "314.86", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExODYuODYiLCJiYXNlX2ZhcmUiOiI4NzIuMDAiLCJ0YXgiOiIzMTQuODYiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI4NzIuMDAiLCJ0YXgiOiIzMTQuODYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTg2Ljg2IiwiYmFzZV9mYXJlIjoiODcyLjAwIiwidGF4IjoiMzE0Ljg2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODcyLjAwIiwidGF4IjoiMzE0Ljg2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE4Ni44NiIsImJhc2VfZmFyZSI6Ijg3Mi4wMCIsInRheCI6IjMxNC44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTg2Ljg2LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1186.86, "filter": { "id": "F1MS00008-117", "price": 1186.86, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TK", "carrier_marketing": "TK", "aircraft": "333", "aircraft_name": "Airbus A330-300", "cabin_class": "Business Restricted", "connecting_airport": [ "IST" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T19:45:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T15:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301945ist2026073023401876ist202607311225rak202607311540619", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-118", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-118", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT17H10M", "transit_time": "PT17H10M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o20", "productId": "p110", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T15:15:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "IST", "arrival_time": "2026-07-30T19:15:00", "destination_terminal": null, "destination_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "flight_date": "2026-07-30", "flight_time": "PT4H0M", "distance": 1036, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "333", "name": "Airbus A330-300", "picture": "333.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1896" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1896" }, "booking_class": { "cabin_class": "Business Restricted", "cabin_code": "BX", "booking_code": "BX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "IST", "departure_time": "2026-07-31T12:25:00", "origin_terminal": null, "origin_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "destination": "RAK", "arrival_time": "2026-07-31T15:40:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT3H15M", "distance": 2141, "lay_over": "PT17H10M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "booking_class": { "cabin_class": "Business Restricted", "cabin_code": "BX", "booking_code": "BX", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1186.86, "gross_total": 1186.86, "base_fare": 872, "tax": 314.86, "sell": { "currency": "EUR", "total": 1186.86, "base_fare": 872, "tax": 314.86 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE4Ni44NiwiYmFzZV9mYXJlIjo4NzIsInRheCI6MzE0Ljg2fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE4Ni44NiwiYmFzZV9mYXJlIjo4NzIsInRheCI6MzE0Ljg2LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExODYuODYsImJhc2VfZmFyZSI6ODcyLCJ0YXgiOjMxNC44Nn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1186.86, "base_fare": 872, "tax": 314.86, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "872.00", "tax": "314.86", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1186.86, "base_fare": 872, "tax": 314.86, "gross": { "base_fare": "872.00", "tax": "314.86", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExODYuODYiLCJiYXNlX2ZhcmUiOiI4NzIuMDAiLCJ0YXgiOiIzMTQuODYiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI4NzIuMDAiLCJ0YXgiOiIzMTQuODYiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTg2Ljg2IiwiYmFzZV9mYXJlIjoiODcyLjAwIiwidGF4IjoiMzE0Ljg2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODcyLjAwIiwidGF4IjoiMzE0Ljg2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE4Ni44NiIsImJhc2VfZmFyZSI6Ijg3Mi4wMCIsInRheCI6IjMxNC44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTg2Ljg2LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1186.86, "filter": { "id": "F1MS00008-118", "price": 1186.86, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TK", "carrier_marketing": "TK", "aircraft": "333", "aircraft_name": "Airbus A330-300", "cabin_class": "Business Restricted", "connecting_airport": [ "IST" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T15:15:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T15:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301515ist2026073019151896ist202607311225rak202607311540619", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-119", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-119", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1H20M", "transit_time": "PT1H20M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o10", "productId": "p69", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T16:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "BCN", "arrival_time": "2026-07-30T18:30:00", "destination_terminal": "1", "destination_airport": { "name": "Barcelona-El Prat Airport", "city": "Barcelona", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT1H45M", "distance": 465, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "321", "name": "Airbus A321", "picture": "321.png" }, "operating": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "6333" }, "marketing": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "6333" }, "booking_class": { "cabin_class": "Timeflex Plus", "cabin_code": "TFL", "booking_code": "TFL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 25, "unit": "kg", "title": "25 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "BCN", "departure_time": "2026-07-30T19:50:00", "origin_terminal": "1", "origin_airport": { "name": "Barcelona-El Prat Airport", "city": "Barcelona", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-30T21:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H35M", "distance": 873, "lay_over": "PT01H20M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "7334" }, "marketing": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "7334" }, "booking_class": { "cabin_class": "Timeflex Plus", "cabin_code": "TFL", "booking_code": "TFL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 25, "unit": "kg", "title": "25 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1462.9, "gross_total": 1462.9, "base_fare": 1413, "tax": 49.9, "sell": { "currency": "EUR", "total": 1462.9, "base_fare": 1413, "tax": 49.9 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ2Mi45LCJiYXNlX2ZhcmUiOjE0MTMsInRheCI6NDkuOX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE0NjIuOSwiYmFzZV9mYXJlIjoxNDEzLCJ0YXgiOjQ5LjksImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ2Mi45LCJiYXNlX2ZhcmUiOjE0MTMsInRheCI6NDkuOX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1462.9, "base_fare": 1413, "tax": 49.9, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1413.00", "tax": "49.90", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1462.9, "base_fare": 1413, "tax": 49.9, "gross": { "base_fare": "1413.00", "tax": "49.90", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0NjIuOTAiLCJiYXNlX2ZhcmUiOiIxNDEzLjAwIiwidGF4IjoiNDkuOTAiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiIxNDEzLjAwIiwidGF4IjoiNDkuOTAiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxNDYyLjkwIiwiYmFzZV9mYXJlIjoiMTQxMy4wMCIsInRheCI6IjQ5LjkwIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTQxMy4wMCIsInRheCI6IjQ5LjkwIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTQ2Mi45MCIsImJhc2VfZmFyZSI6IjE0MTMuMDAiLCJ0YXgiOiI0OS45MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxNDYyLjksInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1462.9, "filter": { "id": "F1MS00008-119", "price": 1462.9, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "VY", "carrier_marketing": "VY", "aircraft": "321", "aircraft_name": "Airbus A321", "cabin_class": "Timeflex Plus", "connecting_airport": [ "BCN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T16:45:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T21:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301645bcn2026073018306333bcn202607301950rak2026073021257334", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-120", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-120", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT2H35M", "transit_time": "PT2H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o12", "productId": "p76", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T15:30:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "BCN", "arrival_time": "2026-07-30T17:15:00", "destination_terminal": "1", "destination_airport": { "name": "Barcelona-El Prat Airport", "city": "Barcelona", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT1H45M", "distance": 465, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "321", "name": "Airbus A321", "picture": "321.png" }, "operating": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "6341" }, "marketing": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "6341" }, "booking_class": { "cabin_class": "Timeflex Plus", "cabin_code": "TFL", "booking_code": "TFL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 25, "unit": "kg", "title": "25 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "BCN", "departure_time": "2026-07-30T19:50:00", "origin_terminal": "1", "origin_airport": { "name": "Barcelona-El Prat Airport", "city": "Barcelona", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-30T21:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H35M", "distance": 873, "lay_over": "PT02H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "7334" }, "marketing": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "7334" }, "booking_class": { "cabin_class": "Timeflex Plus", "cabin_code": "TFL", "booking_code": "TFL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 25, "unit": "kg", "title": "25 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1462.9, "gross_total": 1462.9, "base_fare": 1413, "tax": 49.9, "sell": { "currency": "EUR", "total": 1462.9, "base_fare": 1413, "tax": 49.9 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ2Mi45LCJiYXNlX2ZhcmUiOjE0MTMsInRheCI6NDkuOX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE0NjIuOSwiYmFzZV9mYXJlIjoxNDEzLCJ0YXgiOjQ5LjksImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ2Mi45LCJiYXNlX2ZhcmUiOjE0MTMsInRheCI6NDkuOX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1462.9, "base_fare": 1413, "tax": 49.9, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1413.00", "tax": "49.90", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1462.9, "base_fare": 1413, "tax": 49.9, "gross": { "base_fare": "1413.00", "tax": "49.90", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0NjIuOTAiLCJiYXNlX2ZhcmUiOiIxNDEzLjAwIiwidGF4IjoiNDkuOTAiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiIxNDEzLjAwIiwidGF4IjoiNDkuOTAiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxNDYyLjkwIiwiYmFzZV9mYXJlIjoiMTQxMy4wMCIsInRheCI6IjQ5LjkwIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTQxMy4wMCIsInRheCI6IjQ5LjkwIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTQ2Mi45MCIsImJhc2VfZmFyZSI6IjE0MTMuMDAiLCJ0YXgiOiI0OS45MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxNDYyLjksInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1462.9, "filter": { "id": "F1MS00008-120", "price": 1462.9, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "VY", "carrier_marketing": "VY", "aircraft": "321", "aircraft_name": "Airbus A321", "cabin_class": "Timeflex Plus", "connecting_airport": [ "BCN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T15:30:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T21:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301530bcn2026073017156341bcn202607301950rak2026073021257334", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-121", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-121", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H5M", "transit_time": "PT8H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o13", "productId": "p78", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T10:00:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "BCN", "arrival_time": "2026-07-30T11:45:00", "destination_terminal": "1", "destination_airport": { "name": "Barcelona-El Prat Airport", "city": "Barcelona", "country": "Spain", "timezone": "Europe\/Madrid" }, "flight_date": "2026-07-30", "flight_time": "PT1H45M", "distance": 465, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32Q", "name": "Airbus A321 NEO", "picture": "32Q.png" }, "operating": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "6331" }, "marketing": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "6331" }, "booking_class": { "cabin_class": "Timeflex Plus", "cabin_code": "TFL", "booking_code": "TFL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 25, "unit": "kg", "title": "25 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "BCN", "departure_time": "2026-07-30T19:50:00", "origin_terminal": "1", "origin_airport": { "name": "Barcelona-El Prat Airport", "city": "Barcelona", "country": "Spain", "timezone": "Europe\/Madrid" }, "destination": "RAK", "arrival_time": "2026-07-30T21:25:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT1H35M", "distance": 873, "lay_over": "PT08H05M", "lay_over_date": "not-applicable", "aircraft": { "code": "32A", "name": "Airbus A320", "picture": "32A.png" }, "operating": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "7334" }, "marketing": { "carrier": "VY", "carrier_name": "Vueling Airlines", "carrier_logo": "VY.png", "flight_number": "7334" }, "booking_class": { "cabin_class": "Timeflex Plus", "cabin_code": "TFL", "booking_code": "TFL", "meal_code": null, "seat_available": 9 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 25, "unit": "kg", "title": "25 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1462.9, "gross_total": 1462.9, "base_fare": 1413, "tax": 49.9, "sell": { "currency": "EUR", "total": 1462.9, "base_fare": 1413, "tax": 49.9 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ2Mi45LCJiYXNlX2ZhcmUiOjE0MTMsInRheCI6NDkuOX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE0NjIuOSwiYmFzZV9mYXJlIjoxNDEzLCJ0YXgiOjQ5LjksImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ2Mi45LCJiYXNlX2ZhcmUiOjE0MTMsInRheCI6NDkuOX19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1462.9, "base_fare": 1413, "tax": 49.9, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1413.00", "tax": "49.90", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1462.9, "base_fare": 1413, "tax": 49.9, "gross": { "base_fare": "1413.00", "tax": "49.90", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0NjIuOTAiLCJiYXNlX2ZhcmUiOiIxNDEzLjAwIiwidGF4IjoiNDkuOTAiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiIxNDEzLjAwIiwidGF4IjoiNDkuOTAiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxNDYyLjkwIiwiYmFzZV9mYXJlIjoiMTQxMy4wMCIsInRheCI6IjQ5LjkwIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTQxMy4wMCIsInRheCI6IjQ5LjkwIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTQ2Mi45MCIsImJhc2VfZmFyZSI6IjE0MTMuMDAiLCJ0YXgiOiI0OS45MCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxNDYyLjksInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1462.9, "filter": { "id": "F1MS00008-121", "price": 1462.9, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "VY", "carrier_marketing": "VY", "aircraft": "32Q", "aircraft_name": "Airbus A321 NEO", "cabin_class": "Timeflex Plus", "connecting_airport": [ "BCN" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T10:00:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T21:25:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301000bcn2026073011456331bcn202607301950rak2026073021257334", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-122", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-122", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1H35M", "transit_time": "PT1H35M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o18", "productId": "p99", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T06:50:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "IST", "arrival_time": "2026-07-30T10:50:00", "destination_terminal": null, "destination_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "flight_date": "2026-07-30", "flight_time": "PT4H0M", "distance": 1036, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "32Q", "name": "Airbus A321 NEO", "picture": "32Q.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1878" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1878" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BB", "booking_code": "BB", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "IST", "departure_time": "2026-07-30T12:25:00", "origin_terminal": null, "origin_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "destination": "RAK", "arrival_time": "2026-07-30T15:40:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT3H15M", "distance": 2141, "lay_over": "PT01H35M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BB", "booking_code": "BB", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1480.86, "gross_total": 1480.86, "base_fare": 1166, "tax": 314.86, "sell": { "currency": "EUR", "total": 1480.86, "base_fare": 1166, "tax": 314.86 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ4MC44NiwiYmFzZV9mYXJlIjoxMTY2LCJ0YXgiOjMxNC44Nn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE0ODAuODYsImJhc2VfZmFyZSI6MTE2NiwidGF4IjozMTQuODYsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ4MC44NiwiYmFzZV9mYXJlIjoxMTY2LCJ0YXgiOjMxNC44Nn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1480.86, "base_fare": 1166, "tax": 314.86, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1166.00", "tax": "314.86", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1480.86, "base_fare": 1166, "tax": 314.86, "gross": { "base_fare": "1166.00", "tax": "314.86", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0ODAuODYiLCJiYXNlX2ZhcmUiOiIxMTY2LjAwIiwidGF4IjoiMzE0Ljg2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTE2Ni4wMCIsInRheCI6IjMxNC44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0ODAuODYiLCJiYXNlX2ZhcmUiOiIxMTY2LjAwIiwidGF4IjoiMzE0Ljg2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTE2Ni4wMCIsInRheCI6IjMxNC44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0ODAuODYiLCJiYXNlX2ZhcmUiOiIxMTY2LjAwIiwidGF4IjoiMzE0Ljg2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjE0ODAuODYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1480.86, "filter": { "id": "F1MS00008-122", "price": 1480.86, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TK", "carrier_marketing": "TK", "aircraft": "32Q", "aircraft_name": "Airbus A321 NEO", "cabin_class": "Business Flex", "connecting_airport": [ "IST" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-07-30T06:50:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-30T15:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607300650ist2026073010501878ist202607301225rak202607301540619", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-123", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-123", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H45M", "transit_time": "PT3H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o20", "productId": "p111", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T10:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "IST", "arrival_time": "2026-07-30T14:40:00", "destination_terminal": null, "destination_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "flight_date": "2026-07-30", "flight_time": "PT3H55M", "distance": 1036, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1874" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1874" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BB", "booking_code": "BB", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "IST", "departure_time": "2026-07-30T18:25:00", "origin_terminal": null, "origin_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "destination": "RAK", "arrival_time": "2026-07-30T21:45:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-30", "flight_time": "PT3H20M", "distance": 2141, "lay_over": "PT03H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "621" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "621" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BB", "booking_code": "BB", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1480.86, "gross_total": 1480.86, "base_fare": 1166, "tax": 314.86, "sell": { "currency": "EUR", "total": 1480.86, "base_fare": 1166, "tax": 314.86 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ4MC44NiwiYmFzZV9mYXJlIjoxMTY2LCJ0YXgiOjMxNC44Nn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE0ODAuODYsImJhc2VfZmFyZSI6MTE2NiwidGF4IjozMTQuODYsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ4MC44NiwiYmFzZV9mYXJlIjoxMTY2LCJ0YXgiOjMxNC44Nn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1480.86, "base_fare": 1166, "tax": 314.86, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1166.00", "tax": "314.86", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1480.86, "base_fare": 1166, "tax": 314.86, "gross": { "base_fare": "1166.00", "tax": "314.86", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0ODAuODYiLCJiYXNlX2ZhcmUiOiIxMTY2LjAwIiwidGF4IjoiMzE0Ljg2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTE2Ni4wMCIsInRheCI6IjMxNC44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0ODAuODYiLCJiYXNlX2ZhcmUiOiIxMTY2LjAwIiwidGF4IjoiMzE0Ljg2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTE2Ni4wMCIsInRheCI6IjMxNC44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0ODAuODYiLCJiYXNlX2ZhcmUiOiIxMTY2LjAwIiwidGF4IjoiMzE0Ljg2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjE0ODAuODYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1480.86, "filter": { "id": "F1MS00008-123", "price": 1480.86, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TK", "carrier_marketing": "TK", "aircraft": "359", "aircraft_name": "Airbus A350-900", "cabin_class": "Business Flex", "connecting_airport": [ "IST" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T10:45:00", "arrival_timing_slot": "night", "arrival_departure_time": "2026-07-30T21:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301045ist2026073014401874ist202607301825rak202607302145621", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-124", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-124", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H45M", "transit_time": "PT12H45M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o20", "productId": "p112", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T19:45:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "IST", "arrival_time": "2026-07-30T23:40:00", "destination_terminal": null, "destination_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "flight_date": "2026-07-30", "flight_time": "PT3H55M", "distance": 1036, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "333", "name": "Airbus A330-300", "picture": "333.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1876" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1876" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BB", "booking_code": "BB", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "IST", "departure_time": "2026-07-31T12:25:00", "origin_terminal": null, "origin_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "destination": "RAK", "arrival_time": "2026-07-31T15:40:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT3H15M", "distance": 2141, "lay_over": "PT12H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BB", "booking_code": "BB", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1480.86, "gross_total": 1480.86, "base_fare": 1166, "tax": 314.86, "sell": { "currency": "EUR", "total": 1480.86, "base_fare": 1166, "tax": 314.86 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ4MC44NiwiYmFzZV9mYXJlIjoxMTY2LCJ0YXgiOjMxNC44Nn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE0ODAuODYsImJhc2VfZmFyZSI6MTE2NiwidGF4IjozMTQuODYsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ4MC44NiwiYmFzZV9mYXJlIjoxMTY2LCJ0YXgiOjMxNC44Nn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1480.86, "base_fare": 1166, "tax": 314.86, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1166.00", "tax": "314.86", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1480.86, "base_fare": 1166, "tax": 314.86, "gross": { "base_fare": "1166.00", "tax": "314.86", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0ODAuODYiLCJiYXNlX2ZhcmUiOiIxMTY2LjAwIiwidGF4IjoiMzE0Ljg2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTE2Ni4wMCIsInRheCI6IjMxNC44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0ODAuODYiLCJiYXNlX2ZhcmUiOiIxMTY2LjAwIiwidGF4IjoiMzE0Ljg2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTE2Ni4wMCIsInRheCI6IjMxNC44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0ODAuODYiLCJiYXNlX2ZhcmUiOiIxMTY2LjAwIiwidGF4IjoiMzE0Ljg2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjE0ODAuODYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1480.86, "filter": { "id": "F1MS00008-124", "price": 1480.86, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TK", "carrier_marketing": "TK", "aircraft": "333", "aircraft_name": "Airbus A330-300", "cabin_class": "Business Flex", "connecting_airport": [ "IST" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-07-30T19:45:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T15:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301945ist2026073023401876ist202607311225rak202607311540619", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-125", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-125", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT17H10M", "transit_time": "PT17H10M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o20", "productId": "p113", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T15:15:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "IST", "arrival_time": "2026-07-30T19:15:00", "destination_terminal": null, "destination_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "flight_date": "2026-07-30", "flight_time": "PT4H0M", "distance": 1036, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "333", "name": "Airbus A330-300", "picture": "333.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1896" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "1896" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BB", "booking_code": "BB", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } }, { "air_segment_key": null, "origin": "IST", "departure_time": "2026-07-31T12:25:00", "origin_terminal": null, "origin_airport": { "name": "Istanbul Airport", "city": "Istanbul", "country": "Turkey", "timezone": "Europe\/Istanbul" }, "destination": "RAK", "arrival_time": "2026-07-31T15:40:00", "destination_terminal": null, "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT3H15M", "distance": 2141, "lay_over": "PT17H10M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "marketing": { "carrier": "TK", "carrier_name": "Turkish Airlines", "carrier_logo": "TK.png", "flight_number": "619" }, "booking_class": { "cabin_class": "Business Flex", "cabin_code": "BB", "booking_code": "BB", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 2, "weight": 31.75, "unit": "kg", "title": "2 pieces 31.75 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 2, "weight": null, "unit": null, "title": "2 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 1480.86, "gross_total": 1480.86, "base_fare": 1166, "tax": 314.86, "sell": { "currency": "EUR", "total": 1480.86, "base_fare": 1166, "tax": 314.86 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ4MC44NiwiYmFzZV9mYXJlIjoxMTY2LCJ0YXgiOjMxNC44Nn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE0ODAuODYsImJhc2VfZmFyZSI6MTE2NiwidGF4IjozMTQuODYsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQ4MC44NiwiYmFzZV9mYXJlIjoxMTY2LCJ0YXgiOjMxNC44Nn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 1480.86, "base_fare": 1166, "tax": 314.86, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1166.00", "tax": "314.86", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1480.86, "base_fare": 1166, "tax": 314.86, "gross": { "base_fare": "1166.00", "tax": "314.86", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0ODAuODYiLCJiYXNlX2ZhcmUiOiIxMTY2LjAwIiwidGF4IjoiMzE0Ljg2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTE2Ni4wMCIsInRheCI6IjMxNC44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0ODAuODYiLCJiYXNlX2ZhcmUiOiIxMTY2LjAwIiwidGF4IjoiMzE0Ljg2IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTE2Ni4wMCIsInRheCI6IjMxNC44NiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0ODAuODYiLCJiYXNlX2ZhcmUiOiIxMTY2LjAwIiwidGF4IjoiMzE0Ljg2IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjE0ODAuODYsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1480.86, "filter": { "id": "F1MS00008-125", "price": 1480.86, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "TK", "carrier_marketing": "TK", "aircraft": "333", "aircraft_name": "Airbus A330-300", "cabin_class": "Business Flex", "connecting_airport": [ "IST" ], "total_segment_count": 2, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-07-30T15:15:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T15:40:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301515ist2026073019151896ist202607311225rak202607311540619", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-126", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-126", "get_branded_fare": "no", "no_of_stops_title": "2 Stop Flight", "no_of_stops": 2, "flight_time": "PT11H5M", "transit_time": "PT11H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o21", "productId": "p118", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:40:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "AUH", "arrival_time": "2026-07-30T19:40:00", "destination_terminal": "A", "destination_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "flight_date": "2026-07-30", "flight_time": "PT8H0M", "distance": 2896, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "781", "name": "Boeing 787-10", "picture": "781.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "booking_class": { "cabin_class": "Business Value", "cabin_code": "JVALUE", "booking_code": "JVALUE", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 55, "unit": "kg", "title": "55 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "AUH", "departure_time": "2026-07-31T02:05:00", "origin_terminal": "A", "origin_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "destination": "CMN", "arrival_time": "2026-07-31T07:20:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT5H15M", "distance": 3751, "lay_over": "PT06H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "351", "name": "Airbus", "picture": "351.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "booking_class": { "cabin_class": "Business Value", "cabin_code": "JVALUE", "booking_code": "JVALUE", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 55, "unit": "kg", "title": "55 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-31T12:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T13:05:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT04H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "4218" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "4218" }, "booking_class": { "cabin_class": "Business Value", "cabin_code": "JVALUE", "booking_code": "JVALUE", "meal_code": null, "seat_available": 2 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 55, "unit": "kg", "title": "55 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 2760.62, "gross_total": 2760.62, "base_fare": 2116, "tax": 644.62, "sell": { "currency": "EUR", "total": 2760.62, "base_fare": 2116, "tax": 644.62 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2MC42MiwiYmFzZV9mYXJlIjoyMTE2LCJ0YXgiOjY0NC42Mn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjAuNjIsImJhc2VfZmFyZSI6MjExNiwidGF4Ijo2NDQuNjIsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2MC42MiwiYmFzZV9mYXJlIjoyMTE2LCJ0YXgiOjY0NC42Mn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 2760.62, "base_fare": 2116, "tax": 644.62, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2116.00", "tax": "644.62", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2760.62, "base_fare": 2116, "tax": 644.62, "gross": { "base_fare": "2116.00", "tax": "644.62", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjAuNjIiLCJiYXNlX2ZhcmUiOiIyMTE2LjAwIiwidGF4IjoiNjQ0LjYyIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjExNi4wMCIsInRheCI6IjY0NC42MiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjAuNjIiLCJiYXNlX2ZhcmUiOiIyMTE2LjAwIiwidGF4IjoiNjQ0LjYyIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjExNi4wMCIsInRheCI6IjY0NC42MiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjAuNjIiLCJiYXNlX2ZhcmUiOiIyMTE2LjAwIiwidGF4IjoiNjQ0LjYyIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjAuNjIsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2760.62, "filter": { "id": "F1MS00008-126", "price": 2760.62, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "EY", "carrier_marketing": "EY", "aircraft": "781", "aircraft_name": "Boeing 787-10", "cabin_class": "Business Value", "connecting_airport": [ "AUH", "CMN" ], "total_segment_count": 3, "no_of_stops": 2, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:40:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T13:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301140auh20260730194082auh202607310205cmn202607310720757cmn202607311200rak2026073113054218", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } }, { "tracking_id": "911782723960982214WATP", "flight_key": "F1MS00008-127", "journey_type": "OneWay", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "package_option": "no", "supplier_title": "M-Live", "color_code": "#5ba5a4", "supplier_code": "myethool_partners", "supplier_uid": "F1MS00008", "supplier_partner_code": "myethool_partners-1-00008", "flight_group": [ { "group": 1, "flight_key": "F1MS00008-127", "get_branded_fare": "no", "no_of_stops_title": "2 Stop Flight", "no_of_stops": 2, "flight_time": "PT11H5M", "transit_time": "PT11H5M", "responseId": "427c796d-338e-4bb8-9847-0aa2de781e75", "source": "GDS:TravelPort", "offerId": "o22", "productId": "p123", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-07-30T11:40:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "AUH", "arrival_time": "2026-07-30T19:40:00", "destination_terminal": "A", "destination_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "flight_date": "2026-07-30", "flight_time": "PT8H0M", "distance": 2896, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "781", "name": "Boeing 787-10", "picture": "781.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "82" }, "booking_class": { "cabin_class": "Business Value", "cabin_code": "JVALUE", "booking_code": "JVALUE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 55, "unit": "kg", "title": "55 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "AUH", "departure_time": "2026-07-31T02:05:00", "origin_terminal": "A", "origin_airport": { "name": "Abu Dhabi International Airport", "city": "Abu Dhabi", "country": "United Arab Emirates", "timezone": "Asia\/Dubai" }, "destination": "CMN", "arrival_time": "2026-07-31T07:20:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT5H15M", "distance": 3751, "lay_over": "PT06H25M", "lay_over_date": "not-applicable", "aircraft": { "code": "351", "name": "Airbus", "picture": "351.png" }, "operating": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "marketing": { "carrier": "EY", "carrier_name": "Etihad", "carrier_logo": "EY.png", "flight_number": "757" }, "booking_class": { "cabin_class": "Business Value", "cabin_code": "JVALUE", "booking_code": "JVALUE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 55, "unit": "kg", "title": "55 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-07-31T12:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "RAK", "arrival_time": "2026-07-31T13:05:00", "destination_terminal": "1", "destination_airport": { "name": "Menara Airport", "city": "Marrakech", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-07-31", "flight_time": "PT1H5M", "distance": 124, "lay_over": "PT04H40M", "lay_over_date": "not-applicable", "aircraft": { "code": "AT7", "name": "Alenia ATR 72", "picture": "AT7.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "411" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "411" }, "booking_class": { "cabin_class": "Business Value", "cabin_code": "JVALUE", "booking_code": "JVALUE", "meal_code": null, "seat_available": 4 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": null, "weight": 55, "unit": "kg", "title": "55 kg" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": null, "title": "1 pieces" } } } } ] } ], "pax_options": { "doc_required": "yes", "flight_type": "international" }, "price": { "currency": "EUR", "total": 2902.62, "gross_total": 2902.62, "base_fare": 2116, "tax": 786.62, "sell": { "currency": "EUR", "total": 2902.62, "base_fare": 2116, "tax": 786.62 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjkwMi42MiwiYmFzZV9mYXJlIjoyMTE2LCJ0YXgiOjc4Ni42Mn0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI5MDIuNjIsImJhc2VfZmFyZSI6MjExNiwidGF4Ijo3ODYuNjIsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjkwMi42MiwiYmFzZV9mYXJlIjoyMTE2LCJ0YXgiOjc4Ni42Mn19", "price_breakdown": [ { "passenger_id": "1", "supplier_pax_id": "1", "passenger_type": "ADT", "primary_ptc": "ADT", "ptc_title": "Adult", "passenger_total": 1, "pax_calculate_type": "yes", "comission_type": "", "comission_value": "", "currency": "EUR", "total": 2902.62, "base_fare": 2116, "tax": 786.62, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2116.00", "tax": "786.62", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2902.62, "base_fare": 2116, "tax": 786.62, "gross": { "base_fare": "2116.00", "tax": "786.62", "discount": "0.00", "ait": "0.00", "service_charge": 0 }, "taxBreakdown": { "BD": { "title": "BD -Embarkation Fee (Domestic\/International)", "amount": "0.00" }, "UT": { "title": "UT - Foreign Air Travel Tax (FATT)", "amount": "0.00" }, "E5": { "title": "E5 - Value Added Tax on Embarkation Fees", "amount": "0.00" }, "YQ": { "title": "YQ \u2013 Carrier-Imposed Surcharge\/Fuel Surcharge", "amount": "0.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "0.00" }, "Other": { "title": "Others taxes", "amount": "0.00" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI5MDIuNjIiLCJiYXNlX2ZhcmUiOiIyMTE2LjAwIiwidGF4IjoiNzg2LjYyIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjExNi4wMCIsInRheCI6Ijc4Ni42MiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI5MDIuNjIiLCJiYXNlX2ZhcmUiOiIyMTE2LjAwIiwidGF4IjoiNzg2LjYyIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjExNi4wMCIsInRheCI6Ijc4Ni42MiIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI5MDIuNjIiLCJiYXNlX2ZhcmUiOiIyMTE2LjAwIiwidGF4IjoiNzg2LjYyIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI5MDIuNjIsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2902.62, "filter": { "id": "F1MS00008-127", "price": 2902.62, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "EY", "carrier_marketing": "EY", "aircraft": "781", "aircraft_name": "Boeing 787-10", "cabin_class": "Business Value", "connecting_airport": [ "AUH", "CMN" ], "total_segment_count": 3, "no_of_stops": 2, "departure_timing_slot": "morning", "departure_departure_time": "2026-07-30T11:40:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2026-07-31T13:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "mxp202607301140auh20260730194082auh202607310205cmn202607310720757cmn202607311200rak202607311305411", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "MXP", "destination": "RAK", "departureDate": "2026-07-30", "departureTime": "" } ], "adults": 1, "children": 0, "infants": 0, "cabinClass": [ "Economy" ], "preferredAirlines": [ "all" ], "brandedFare": true, "publicFare": true, "privateFare": true, "ticketType": "all", "connectionType": "all", "contentType": [ "GDS", "NDC" ], "country": [], "isCalenderSearch": false } } ], "search_parameter": { "journey_type": "OneWay", "segment": [ { "departure_airport_type": "AIRPORT", "departure_airport": "MXP", "arrival_airport_type": "AIRPORT", "arrival_airport": "RAK", "departure_date": "2026-07-30", "departure_time": "anytime", "departure_time_within": "anytime", "booking_class": "Economy", "stop": "any", "alliance": { "include": [], "exclude": [] }, "country": { "include": [], "exclude": [] }, "airlines": { "include": [], "exclude": [] } } ], "travelers_adult": 1, "travelers_child": 0, "travelers_child_age": [], "travelers_infants": 0, "travelers_infants_age": [], "fare_type": [ "all", "public", "brand" ], "fare_option": [], "content_type": "all_content", "ptc_option": [], "agency_ethnic_list": [], "preferred_carrier": [], "non_stop_flight": "any", "baggage_option": "any", "booking_class": "Economy", "supplier_uid": "all", "partner_id": "9", "language": "en", "short_ref": "f00a16eafa5be42eb48b1a4b021c57700325697e59ce9ae64a8f4e3ff7da2205", "version": 1, "team_profile": [ null ], "RefundableOnly": false, "BestFareOnly": false } }