{ "status": "success", "reason": "Price validation has been successful.", "reason_admin": "Price validation has been successful.", "price_change": "no-change", "tracking_id": "91178768344198221G37AN", "booking_tracking_id": "9331787683795982218J4MN", "flight_key": "F1MS00008-38", "search_price": { "currency": "EUR", "amount": 621.38 }, "validation_price": { "currency": "EUR", "amount": 621.38 }, "data": { "tracking_id": "9331787683795982218J4MN", "flight_key": "F1MS00008-0", "journey_type": "RoundTrip", "result_type": "general", "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", "search_parameter": { "journey_type": "RoundTrip", "segment": [ { "departure_airport_type": "AIRPORT", "departure_airport": "MXP", "arrival_airport_type": "AIRPORT", "arrival_airport": "DSS", "departure_date": "2026-12-09", "departure_time": "anytime", "departure_time_within": "anytime", "booking_class": "Economy", "stop": "any", "alliance": { "include": [], "exclude": [] }, "country": { "include": [], "exclude": [] }, "airlines": { "include": [], "exclude": [] } }, { "departure_airport_type": "AIRPORT", "departure_airport": "DSS", "arrival_airport_type": "AIRPORT", "arrival_airport": "MXP", "departure_date": "2027-01-13", "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": "678bbc4d2fb81d0ebd95c43957943c8fa9540fe89bb12779f96696e872e37f59", "version": 1, "team_profile": [ null ], "RefundableOnly": false, "BestFareOnly": false }, "pax_options": { "pax_dob_required": "yes", "seat_selection": "disable", "meal_selection": "disable", "baggage_selection": "disable", "passport_scan_selection": "active", "pax_search_selection": "active", "frequent_flyer_selection": "disable", "wheelchair_selection": "disable", "pax_email_contact_selection": "active", "pax_save_option": "active", "terms_selection": "check", "cancellation_selection": "check", "doc_required": "optional", "flight_type": "international" }, "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": "PT8H0M", "transit_time": "PT1H20M", "responseId": "6d1a30f2-b64c-45cc-901d-a7d72af61cc6", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p35", "routes": [ { "air_segment_key": null, "origin": "MXP", "departure_time": "2026-12-09T12:00:00", "origin_terminal": "1", "origin_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-12-09T14:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-12-09", "flight_time": "PT3H10M", "distance": 1227, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.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": 1, "weight": null, "unit": "pieces", "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": null, "weight": null, "unit": null, "title": "" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2026-12-09T15:30:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "DSS", "arrival_time": "2026-12-09T19:00:00", "destination_terminal": null, "destination_airport": { "name": "Blaise Diagne International Airport", "city": "Dakar", "country": "Senegal", "timezone": "Africa\/Dakar" }, "flight_date": "2026-12-09", "flight_time": "PT3H30M", "distance": 1426, "lay_over": "PT01H20M", "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": "503" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "503" }, "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": 1, "weight": null, "unit": "pieces", "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": null, "weight": null, "unit": null, "title": "" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-38", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT14H0M", "transit_time": "PT7H45M", "responseId": "6d1a30f2-b64c-45cc-901d-a7d72af61cc6", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p55", "routes": [ { "air_segment_key": null, "origin": "DSS", "departure_time": "2027-01-13T20:00:00", "origin_terminal": null, "origin_airport": { "name": "Blaise Diagne International Airport", "city": "Dakar", "country": "Senegal", "timezone": "Africa\/Dakar" }, "destination": "CMN", "arrival_time": "2027-01-13T23:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-13", "flight_time": "PT3H10M", "distance": 1426, "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": "502" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "502" }, "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": 1, "weight": null, "unit": "pieces", "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": null, "weight": null, "unit": null, "title": "" } } } }, { "air_segment_key": null, "origin": "CMN", "departure_time": "2027-01-14T06:55:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "MXP", "arrival_time": "2027-01-14T11:00:00", "destination_terminal": "1", "destination_airport": { "name": "Milano Malpensa Airport", "city": "Milan", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-14", "flight_time": "PT3H5M", "distance": 1227, "lay_over": "PT07H45M", "lay_over_date": "not-applicable", "aircraft": { "code": "7M8", "name": "Boeing 737Max", "picture": "7M8.png" }, "operating": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "954" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "954" }, "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": 1, "weight": null, "unit": "pieces", "title": "1 pieces" } }, "carry_on": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": null, "weight": null, "unit": null, "title": "" } } } } ] } ], "flightSegments": [ { "flightLocatorId": "f1", "flightNumber": "955", "airlineCode": "AT", "airlineName": "Royal Air Maroc", "aircraft": "7M8", "airlineLogo": "https:\/\/myethoolassests.s3.eu-north-1.amazonaws.com\/uploads\/airlinelogos\/AT.svg", "class": "Q", "cabin": "Economy", "flightStatus": "Confirmed", "flightStatusCode": "HK", "departureDate": "2026-12-09", "departureTime": "12:00:00", "arrivalDate": "2026-12-09", "arrivalTime": "14:10:00", "origin": "MXP", "originCity": "Milan, IT", "originName": "Milan-Malpensa Airport", "destination": "CMN", "destinationCity": "Casablanca, MA", "destinationName": "Mohammed V International Airport", "duration": "PT3H10M", "connectionDuration": "PT1H20M", "sequence": 1, "specialFare": false }, { "flightLocatorId": "f3", "flightNumber": "502", "airlineCode": "AT", "airlineName": "Royal Air Maroc", "aircraft": "73H", "airlineLogo": "https:\/\/myethoolassests.s3.eu-north-1.amazonaws.com\/uploads\/airlinelogos\/AT.svg", "class": "T", "cabin": "Economy", "flightStatus": "Confirmed", "flightStatusCode": "HK", "departureDate": "2027-01-13", "departureTime": "20:00:00", "arrivalDate": "2027-01-13", "arrivalTime": "23:10:00", "origin": "DSS", "originCity": "Dakar, SN", "originName": "Blaise Diagne International Airport", "destination": "CMN", "destinationCity": "Casablanca, MA", "destinationName": "Mohammed V International Airport", "duration": "PT3H10M", "connectionDuration": "PT7H45M", "sequence": 1, "specialFare": false }, { "flightLocatorId": "f2", "flightNumber": "503", "airlineCode": "AT", "airlineName": "Royal Air Maroc", "aircraft": "73H", "airlineLogo": "https:\/\/myethoolassests.s3.eu-north-1.amazonaws.com\/uploads\/airlinelogos\/AT.svg", "class": "Q", "cabin": "Economy", "flightStatus": "Confirmed", "flightStatusCode": "HK", "departureDate": "2026-12-09", "departureTime": "15:30:00", "arrivalDate": "2026-12-09", "arrivalTime": "19:00:00", "origin": "CMN", "originCity": "Casablanca, MA", "originName": "Mohammed V International Airport", "destination": "DSS", "destinationCity": "Dakar, SN", "destinationName": "Blaise Diagne International Airport", "duration": "PT3H30M", "sequence": 2, "specialFare": false }, { "flightLocatorId": "f4", "flightNumber": "954", "airlineCode": "AT", "airlineName": "Royal Air Maroc", "aircraft": "7M8", "airlineLogo": "https:\/\/myethoolassests.s3.eu-north-1.amazonaws.com\/uploads\/airlinelogos\/AT.svg", "class": "T", "cabin": "Economy", "flightStatus": "Confirmed", "flightStatusCode": "HK", "departureDate": "2027-01-14", "departureTime": "06:55:00", "arrivalDate": "2027-01-14", "arrivalTime": "11:00:00", "origin": "CMN", "originCity": "Casablanca, MA", "originName": "Mohammed V International Airport", "destination": "MXP", "destinationCity": "Milan, IT", "destinationName": "Milan-Malpensa Airport", "duration": "PT3H5M", "sequence": 2, "specialFare": false } ], "processedOffer": [], "paxList": null, "workbenchId": "bfa96dfc-3462-4eac-a552-331fe17d68a9", "price": { "currency": "EUR", "total": 621.38, "gross_total": 621.38, "base_fare": 94, "tax": 527.38, "sell": { "currency": "EUR", "total": 621.38, "base_fare": 94, "tax": 527.38 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NjIxLjM4LCJiYXNlX2ZhcmUiOjk0LCJ0YXgiOjUyNy4zOH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjYyMS4zOCwiYmFzZV9mYXJlIjo5NCwidGF4Ijo1MjcuMzgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NjIxLjM4LCJiYXNlX2ZhcmUiOjk0LCJ0YXgiOjUyNy4zOH19", "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": 621.38, "base_fare": 94, "tax": 527.38, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "94.00", "tax": "527.38", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 621.38, "base_fare": 94, "tax": 527.38, "gross": { "base_fare": "94.00", "tax": "527.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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjYyMS4zOCIsImJhc2VfZmFyZSI6Ijk0LjAwIiwidGF4IjoiNTI3LjM4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiOTQuMDAiLCJ0YXgiOiI1MjcuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiI2MjEuMzgiLCJiYXNlX2ZhcmUiOiI5NC4wMCIsInRheCI6IjUyNy4zOCIsImdyb3NzIjp7ImJhc2VfZmFyZSI6Ijk0LjAwIiwidGF4IjoiNTI3LjM4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiNjIxLjM4IiwiYmFzZV9mYXJlIjoiOTQuMDAiLCJ0YXgiOiI1MjcuMzgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIiwicGF5YWJsZSI6NjIxLjM4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "brandCode": "EESSENTIAL", "brandName": "Eco Essential", "fare_rules": { "refundable_data": null, "refundable": null, "change_before_departure": null }, "total_price": 621.38, "filter": { "id": "F1MS00008-0", "price": 621.38, "journey_duration": "PT", "journey_duration_seconds": null, "layover_duration": "PT", "layover_duration_seconds": null, "carrier_operating": "AT", "carrier_marketing": "AT", "aircraft": "7M8", "aircraft_name": "Boeing 737Max", "cabin_class": "Eco Essential", "connecting_airport": [], "total_segment_count": null, "no_of_stops": null, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-12-09T12:00:00", "arrival_timing_slot": null, "arrival_departure_time": null, "refund": null, "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "", "destination_reach_time": "PT", "destination_reach_timestamp": null } }