{ "status": "success", "tracking_id": "61178237584498221A7GNT", "performanceDuration": "", "data": [ { "tracking_id": "61178237584498221A7GNT", "flight_key": "F1MS00008-0", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p0", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-0", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H15M", "transit_time": "PT3H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p15", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 780.61, "gross_total": 780.61, "base_fare": 345, "tax": 435.61, "sell": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzgwLjYxLCJiYXNlX2ZhcmUiOjM0NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MX19", "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": 780.61, "base_fare": 345, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "345.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61, "gross": { "base_fare": "345.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3ODAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 780.61, "filter": { "id": "F1MS00008-0", "price": 780.61, "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": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-1", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p0", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-1", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H5M", "transit_time": "PT8H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p16", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 780.61, "gross_total": 780.61, "base_fare": 345, "tax": 435.61, "sell": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzgwLjYxLCJiYXNlX2ZhcmUiOjM0NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MX19", "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": 780.61, "base_fare": 345, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "345.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61, "gross": { "base_fare": "345.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3ODAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 780.61, "filter": { "id": "F1MS00008-1", "price": 780.61, "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": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-2", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p0", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-2", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT10H5M", "transit_time": "PT10H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p17", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 780.61, "gross_total": 780.61, "base_fare": 345, "tax": 435.61, "sell": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzgwLjYxLCJiYXNlX2ZhcmUiOjM0NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MX19", "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": 780.61, "base_fare": 345, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "345.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61, "gross": { "base_fare": "345.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3ODAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 780.61, "filter": { "id": "F1MS00008-2", "price": 780.61, "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": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-3", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p0", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-3", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT14H55M", "transit_time": "PT14H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p18", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 780.61, "gross_total": 780.61, "base_fare": 345, "tax": 435.61, "sell": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzgwLjYxLCJiYXNlX2ZhcmUiOjM0NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MX19", "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": 780.61, "base_fare": 345, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "345.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61, "gross": { "base_fare": "345.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3ODAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 780.61, "filter": { "id": "F1MS00008-3", "price": 780.61, "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": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-4", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p1", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "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": 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-4", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H5M", "transit_time": "PT8H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p15", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 780.61, "gross_total": 780.61, "base_fare": 345, "tax": 435.61, "sell": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzgwLjYxLCJiYXNlX2ZhcmUiOjM0NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MX19", "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": 780.61, "base_fare": 345, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "345.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61, "gross": { "base_fare": "345.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3ODAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 780.61, "filter": { "id": "F1MS00008-4", "price": 780.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-5", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p1", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "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": 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-5", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H55M", "transit_time": "PT12H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p16", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 780.61, "gross_total": 780.61, "base_fare": 345, "tax": 435.61, "sell": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzgwLjYxLCJiYXNlX2ZhcmUiOjM0NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MX19", "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": 780.61, "base_fare": 345, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "345.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61, "gross": { "base_fare": "345.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3ODAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 780.61, "filter": { "id": "F1MS00008-5", "price": 780.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-6", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p1", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "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": 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-6", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT14H55M", "transit_time": "PT14H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p17", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 780.61, "gross_total": 780.61, "base_fare": 345, "tax": 435.61, "sell": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzgwLjYxLCJiYXNlX2ZhcmUiOjM0NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MX19", "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": 780.61, "base_fare": 345, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "345.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61, "gross": { "base_fare": "345.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3ODAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 780.61, "filter": { "id": "F1MS00008-6", "price": 780.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-7", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p1", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "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": 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-7", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT19H45M", "transit_time": "PT19H45M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p18", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 780.61, "gross_total": 780.61, "base_fare": 345, "tax": 435.61, "sell": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzgwLjYxLCJiYXNlX2ZhcmUiOjM0NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MX19", "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": 780.61, "base_fare": 345, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "345.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61, "gross": { "base_fare": "345.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3ODAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 780.61, "filter": { "id": "F1MS00008-7", "price": 780.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-8", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p2", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-8", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT20H20M", "transit_time": "PT20H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p15", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 780.61, "gross_total": 780.61, "base_fare": 345, "tax": 435.61, "sell": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzgwLjYxLCJiYXNlX2ZhcmUiOjM0NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MX19", "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": 780.61, "base_fare": 345, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "345.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61, "gross": { "base_fare": "345.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3ODAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 780.61, "filter": { "id": "F1MS00008-8", "price": 780.61, "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": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-9", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p2", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-9", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D1H10M", "transit_time": "PT1D1H10M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p16", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 780.61, "gross_total": 780.61, "base_fare": 345, "tax": 435.61, "sell": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzgwLjYxLCJiYXNlX2ZhcmUiOjM0NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MX19", "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": 780.61, "base_fare": 345, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "345.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61, "gross": { "base_fare": "345.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3ODAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 780.61, "filter": { "id": "F1MS00008-9", "price": 780.61, "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": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-10", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p2", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-10", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D3H10M", "transit_time": "PT1D3H10M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p17", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 780.61, "gross_total": 780.61, "base_fare": 345, "tax": 435.61, "sell": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzgwLjYxLCJiYXNlX2ZhcmUiOjM0NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MX19", "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": 780.61, "base_fare": 345, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "345.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61, "gross": { "base_fare": "345.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3ODAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 780.61, "filter": { "id": "F1MS00008-10", "price": 780.61, "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": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-11", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p2", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-11", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D8H0M", "transit_time": "PT1D8H0M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p18", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 780.61, "gross_total": 780.61, "base_fare": 345, "tax": 435.61, "sell": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NzgwLjYxLCJiYXNlX2ZhcmUiOjM0NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo3ODAuNjEsImJhc2VfZmFyZSI6MzQ1LCJ0YXgiOjQzNS42MX19", "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": 780.61, "base_fare": 345, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "345.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 780.61, "base_fare": 345, "tax": 435.61, "gross": { "base_fare": "345.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Ijc4MC42MSIsImJhc2VfZmFyZSI6IjM0NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo3ODAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 780.61, "filter": { "id": "F1MS00008-11", "price": 780.61, "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": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-12", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p3", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "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": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p19", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "CMN", "departure_time": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 900.61, "gross_total": 900.61, "base_fare": 465, "tax": 435.61, "sell": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAwLjYxLCJiYXNlX2ZhcmUiOjQ2NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MX19", "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": 900.61, "base_fare": 465, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "465.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61, "gross": { "base_fare": "465.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MDAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 900.61, "filter": { "id": "F1MS00008-12", "price": 900.61, "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 Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-13", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p3", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-13", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H5M", "transit_time": "PT8H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p20", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "CMN", "departure_time": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 900.61, "gross_total": 900.61, "base_fare": 465, "tax": 435.61, "sell": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAwLjYxLCJiYXNlX2ZhcmUiOjQ2NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MX19", "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": 900.61, "base_fare": 465, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "465.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61, "gross": { "base_fare": "465.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MDAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 900.61, "filter": { "id": "F1MS00008-13", "price": 900.61, "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 Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-14", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p3", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-14", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT10H5M", "transit_time": "PT10H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p21", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "CMN", "departure_time": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 900.61, "gross_total": 900.61, "base_fare": 465, "tax": 435.61, "sell": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAwLjYxLCJiYXNlX2ZhcmUiOjQ2NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MX19", "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": 900.61, "base_fare": 465, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "465.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61, "gross": { "base_fare": "465.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MDAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 900.61, "filter": { "id": "F1MS00008-14", "price": 900.61, "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 Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-15", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p3", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-15", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT14H55M", "transit_time": "PT14H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p22", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "CMN", "departure_time": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 900.61, "gross_total": 900.61, "base_fare": 465, "tax": 435.61, "sell": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAwLjYxLCJiYXNlX2ZhcmUiOjQ2NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MX19", "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": 900.61, "base_fare": 465, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "465.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61, "gross": { "base_fare": "465.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MDAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 900.61, "filter": { "id": "F1MS00008-15", "price": 900.61, "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 Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-16", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p4", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-16", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H5M", "transit_time": "PT8H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p19", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "CMN", "departure_time": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 900.61, "gross_total": 900.61, "base_fare": 465, "tax": 435.61, "sell": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAwLjYxLCJiYXNlX2ZhcmUiOjQ2NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MX19", "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": 900.61, "base_fare": 465, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "465.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61, "gross": { "base_fare": "465.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MDAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 900.61, "filter": { "id": "F1MS00008-16", "price": 900.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-17", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p4", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-17", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H55M", "transit_time": "PT12H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p20", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "CMN", "departure_time": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 900.61, "gross_total": 900.61, "base_fare": 465, "tax": 435.61, "sell": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAwLjYxLCJiYXNlX2ZhcmUiOjQ2NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MX19", "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": 900.61, "base_fare": 465, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "465.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61, "gross": { "base_fare": "465.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MDAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 900.61, "filter": { "id": "F1MS00008-17", "price": 900.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-18", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p4", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-18", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT14H55M", "transit_time": "PT14H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p21", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "CMN", "departure_time": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 900.61, "gross_total": 900.61, "base_fare": 465, "tax": 435.61, "sell": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAwLjYxLCJiYXNlX2ZhcmUiOjQ2NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MX19", "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": 900.61, "base_fare": 465, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "465.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61, "gross": { "base_fare": "465.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MDAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 900.61, "filter": { "id": "F1MS00008-18", "price": 900.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-19", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p4", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-19", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT19H45M", "transit_time": "PT19H45M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p22", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "CMN", "departure_time": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 900.61, "gross_total": 900.61, "base_fare": 465, "tax": 435.61, "sell": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAwLjYxLCJiYXNlX2ZhcmUiOjQ2NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MX19", "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": 900.61, "base_fare": 465, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "465.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61, "gross": { "base_fare": "465.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MDAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 900.61, "filter": { "id": "F1MS00008-19", "price": 900.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-20", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p5", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-20", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT20H20M", "transit_time": "PT20H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p19", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "CMN", "departure_time": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 900.61, "gross_total": 900.61, "base_fare": 465, "tax": 435.61, "sell": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAwLjYxLCJiYXNlX2ZhcmUiOjQ2NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MX19", "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": 900.61, "base_fare": 465, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "465.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61, "gross": { "base_fare": "465.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MDAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 900.61, "filter": { "id": "F1MS00008-20", "price": 900.61, "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 Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-21", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p5", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-21", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D1H10M", "transit_time": "PT1D1H10M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p20", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "CMN", "departure_time": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 900.61, "gross_total": 900.61, "base_fare": 465, "tax": 435.61, "sell": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAwLjYxLCJiYXNlX2ZhcmUiOjQ2NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MX19", "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": 900.61, "base_fare": 465, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "465.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61, "gross": { "base_fare": "465.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MDAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 900.61, "filter": { "id": "F1MS00008-21", "price": 900.61, "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 Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-22", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p5", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-22", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D3H10M", "transit_time": "PT1D3H10M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p21", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "CMN", "departure_time": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 900.61, "gross_total": 900.61, "base_fare": 465, "tax": 435.61, "sell": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAwLjYxLCJiYXNlX2ZhcmUiOjQ2NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MX19", "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": 900.61, "base_fare": 465, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "465.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61, "gross": { "base_fare": "465.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MDAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 900.61, "filter": { "id": "F1MS00008-22", "price": 900.61, "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 Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-23", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p5", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-23", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D8H0M", "transit_time": "PT1D8H0M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p22", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "CMN", "departure_time": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 900.61, "gross_total": 900.61, "base_fare": 465, "tax": 435.61, "sell": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6OTAwLjYxLCJiYXNlX2ZhcmUiOjQ2NSwidGF4Ijo0MzUuNjF9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjo5MDAuNjEsImJhc2VfZmFyZSI6NDY1LCJ0YXgiOjQzNS42MX19", "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": 900.61, "base_fare": 465, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "465.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 900.61, "base_fare": 465, "tax": 435.61, "gross": { "base_fare": "465.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjkwMC42MSIsImJhc2VfZmFyZSI6IjQ2NS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo5MDAuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 900.61, "filter": { "id": "F1MS00008-23", "price": 900.61, "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 Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-24", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p6", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "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": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p23", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "CMN", "departure_time": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 1140.61, "gross_total": 1140.61, "base_fare": 705, "tax": 435.61, "sell": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxfSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxLCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExNDAuNjEsImJhc2VfZmFyZSI6NzA1LCJ0YXgiOjQzNS42MX19", "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": 1140.61, "base_fare": 705, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "705.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61, "gross": { "base_fare": "705.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExNDAuNjEiLCJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTQwLjYxIiwiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE0MC42MSIsImJhc2VfZmFyZSI6IjcwNS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTQwLjYxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1140.61, "filter": { "id": "F1MS00008-24", "price": 1140.61, "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 Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-25", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p6", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-25", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H5M", "transit_time": "PT8H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p24", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "CMN", "departure_time": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 1140.61, "gross_total": 1140.61, "base_fare": 705, "tax": 435.61, "sell": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxfSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxLCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExNDAuNjEsImJhc2VfZmFyZSI6NzA1LCJ0YXgiOjQzNS42MX19", "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": 1140.61, "base_fare": 705, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "705.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61, "gross": { "base_fare": "705.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExNDAuNjEiLCJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTQwLjYxIiwiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE0MC42MSIsImJhc2VfZmFyZSI6IjcwNS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTQwLjYxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1140.61, "filter": { "id": "F1MS00008-25", "price": 1140.61, "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 Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-26", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p6", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-26", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT10H5M", "transit_time": "PT10H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p25", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "CMN", "departure_time": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 1140.61, "gross_total": 1140.61, "base_fare": 705, "tax": 435.61, "sell": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxfSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxLCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExNDAuNjEsImJhc2VfZmFyZSI6NzA1LCJ0YXgiOjQzNS42MX19", "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": 1140.61, "base_fare": 705, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "705.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61, "gross": { "base_fare": "705.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExNDAuNjEiLCJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTQwLjYxIiwiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE0MC42MSIsImJhc2VfZmFyZSI6IjcwNS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTQwLjYxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1140.61, "filter": { "id": "F1MS00008-26", "price": 1140.61, "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 Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-27", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p6", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-27", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT14H55M", "transit_time": "PT14H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p26", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "CMN", "departure_time": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 1140.61, "gross_total": 1140.61, "base_fare": 705, "tax": 435.61, "sell": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxfSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxLCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExNDAuNjEsImJhc2VfZmFyZSI6NzA1LCJ0YXgiOjQzNS42MX19", "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": 1140.61, "base_fare": 705, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "705.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61, "gross": { "base_fare": "705.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExNDAuNjEiLCJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTQwLjYxIiwiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE0MC42MSIsImJhc2VfZmFyZSI6IjcwNS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTQwLjYxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1140.61, "filter": { "id": "F1MS00008-27", "price": 1140.61, "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 Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-28", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p7", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-28", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H5M", "transit_time": "PT8H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p23", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "CMN", "departure_time": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 1140.61, "gross_total": 1140.61, "base_fare": 705, "tax": 435.61, "sell": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxfSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxLCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExNDAuNjEsImJhc2VfZmFyZSI6NzA1LCJ0YXgiOjQzNS42MX19", "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": 1140.61, "base_fare": 705, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "705.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61, "gross": { "base_fare": "705.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExNDAuNjEiLCJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTQwLjYxIiwiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE0MC42MSIsImJhc2VfZmFyZSI6IjcwNS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTQwLjYxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1140.61, "filter": { "id": "F1MS00008-28", "price": 1140.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-29", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p7", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-29", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H55M", "transit_time": "PT12H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p24", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "CMN", "departure_time": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 1140.61, "gross_total": 1140.61, "base_fare": 705, "tax": 435.61, "sell": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxfSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxLCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExNDAuNjEsImJhc2VfZmFyZSI6NzA1LCJ0YXgiOjQzNS42MX19", "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": 1140.61, "base_fare": 705, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "705.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61, "gross": { "base_fare": "705.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExNDAuNjEiLCJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTQwLjYxIiwiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE0MC42MSIsImJhc2VfZmFyZSI6IjcwNS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTQwLjYxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1140.61, "filter": { "id": "F1MS00008-29", "price": 1140.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-30", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p7", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-30", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT14H55M", "transit_time": "PT14H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p25", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "CMN", "departure_time": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 1140.61, "gross_total": 1140.61, "base_fare": 705, "tax": 435.61, "sell": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxfSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxLCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExNDAuNjEsImJhc2VfZmFyZSI6NzA1LCJ0YXgiOjQzNS42MX19", "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": 1140.61, "base_fare": 705, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "705.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61, "gross": { "base_fare": "705.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExNDAuNjEiLCJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTQwLjYxIiwiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE0MC42MSIsImJhc2VfZmFyZSI6IjcwNS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTQwLjYxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1140.61, "filter": { "id": "F1MS00008-30", "price": 1140.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-31", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p7", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "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": 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": "CMN", "departure_time": "2026-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-31", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT19H45M", "transit_time": "PT19H45M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p26", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "CMN", "departure_time": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 1140.61, "gross_total": 1140.61, "base_fare": 705, "tax": 435.61, "sell": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxfSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxLCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExNDAuNjEsImJhc2VfZmFyZSI6NzA1LCJ0YXgiOjQzNS42MX19", "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": 1140.61, "base_fare": 705, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "705.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61, "gross": { "base_fare": "705.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExNDAuNjEiLCJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTQwLjYxIiwiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE0MC42MSIsImJhc2VfZmFyZSI6IjcwNS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTQwLjYxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1140.61, "filter": { "id": "F1MS00008-31", "price": 1140.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-32", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p8", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-32", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT20H20M", "transit_time": "PT20H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p23", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "CMN", "departure_time": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 1140.61, "gross_total": 1140.61, "base_fare": 705, "tax": 435.61, "sell": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxfSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxLCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExNDAuNjEsImJhc2VfZmFyZSI6NzA1LCJ0YXgiOjQzNS42MX19", "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": 1140.61, "base_fare": 705, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "705.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61, "gross": { "base_fare": "705.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExNDAuNjEiLCJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTQwLjYxIiwiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE0MC42MSIsImJhc2VfZmFyZSI6IjcwNS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTQwLjYxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1140.61, "filter": { "id": "F1MS00008-32", "price": 1140.61, "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 Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-33", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p8", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-33", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D1H10M", "transit_time": "PT1D1H10M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p24", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "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": 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": "CMN", "departure_time": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 1140.61, "gross_total": 1140.61, "base_fare": 705, "tax": 435.61, "sell": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxfSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxLCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExNDAuNjEsImJhc2VfZmFyZSI6NzA1LCJ0YXgiOjQzNS42MX19", "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": 1140.61, "base_fare": 705, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "705.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61, "gross": { "base_fare": "705.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExNDAuNjEiLCJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTQwLjYxIiwiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE0MC42MSIsImJhc2VfZmFyZSI6IjcwNS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTQwLjYxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1140.61, "filter": { "id": "F1MS00008-33", "price": 1140.61, "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 Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-34", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p8", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-34", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D3H10M", "transit_time": "PT1D3H10M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p25", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "CMN", "departure_time": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "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": 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": 1140.61, "gross_total": 1140.61, "base_fare": 705, "tax": 435.61, "sell": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxfSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxLCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExNDAuNjEsImJhc2VfZmFyZSI6NzA1LCJ0YXgiOjQzNS42MX19", "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": 1140.61, "base_fare": 705, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "705.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61, "gross": { "base_fare": "705.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExNDAuNjEiLCJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTQwLjYxIiwiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE0MC42MSIsImJhc2VfZmFyZSI6IjcwNS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTQwLjYxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1140.61, "filter": { "id": "F1MS00008-34", "price": 1140.61, "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 Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-35", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p8", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "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": 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": "CMN", "departure_time": "2026-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-35", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D8H0M", "transit_time": "PT1D8H0M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p26", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "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": 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": "CMN", "departure_time": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "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": 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": 1140.61, "gross_total": 1140.61, "base_fare": 705, "tax": 435.61, "sell": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxfSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTE0MC42MSwiYmFzZV9mYXJlIjo3MDUsInRheCI6NDM1LjYxLCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjExNDAuNjEsImJhc2VfZmFyZSI6NzA1LCJ0YXgiOjQzNS42MX19", "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": 1140.61, "base_fare": 705, "tax": 435.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "705.00", "tax": "435.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1140.61, "base_fare": 705, "tax": 435.61, "gross": { "base_fare": "705.00", "tax": "435.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjExNDAuNjEiLCJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI3MDUuMDAiLCJ0YXgiOiI0MzUuNjEiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMTQwLjYxIiwiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiNzA1LjAwIiwidGF4IjoiNDM1LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTE0MC42MSIsImJhc2VfZmFyZSI6IjcwNS4wMCIsInRheCI6IjQzNS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMTQwLjYxLCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1140.61, "filter": { "id": "F1MS00008-35", "price": 1140.61, "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 Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-36", "journey_type": "RoundTrip", "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": "PT2H55M", "transit_time": "PT2H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p35", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T06:00:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T07:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1029" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1029" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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-11-20T10:50:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-20T18:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT7H20M", "distance": 2871, "lay_over": "PT02H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-36", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT4H55M", "transit_time": "PT4H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p40", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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": "2027-01-11T08:00:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T09:45:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT02H00M", "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": "1228" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1228" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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": 1271.48, "gross_total": 1271.48, "base_fare": 821, "tax": 450.48, "sell": { "currency": "EUR", "total": 1271.48, "base_fare": 821, "tax": 450.48 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTI3MS40OCwiYmFzZV9mYXJlIjo4MjEsInRheCI6NDUwLjQ4fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTI3MS40OCwiYmFzZV9mYXJlIjo4MjEsInRheCI6NDUwLjQ4LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjEyNzEuNDgsImJhc2VfZmFyZSI6ODIxLCJ0YXgiOjQ1MC40OH19", "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": 1271.48, "base_fare": 821, "tax": 450.48, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "821.00", "tax": "450.48", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1271.48, "base_fare": 821, "tax": 450.48, "gross": { "base_fare": "821.00", "tax": "450.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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjEyNzEuNDgiLCJiYXNlX2ZhcmUiOiI4MjEuMDAiLCJ0YXgiOiI0NTAuNDgiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI4MjEuMDAiLCJ0YXgiOiI0NTAuNDgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMjcxLjQ4IiwiYmFzZV9mYXJlIjoiODIxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODIxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTI3MS40OCIsImJhc2VfZmFyZSI6IjgyMS4wMCIsInRheCI6IjQ1MC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMjcxLjQ4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1271.48, "filter": { "id": "F1MS00008-36", "price": 1271.48, "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": 4, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-11-20T06:00:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T09:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611200600cdg2026112007551029cdg202611201050cky202611201810768cky202701102035cdg202701110600769cdg202701110800blq2027011109451228", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-37", "journey_type": "RoundTrip", "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": "PT2H55M", "transit_time": "PT2H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p35", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T06:00:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T07:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1029" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1029" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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-11-20T10:50:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-20T18:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT7H20M", "distance": 2871, "lay_over": "PT02H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-37", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT9H5M", "transit_time": "PT9H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p41", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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": "2027-01-11T12:10:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T13:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT06H10M", "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": "1328" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1328" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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": 1271.48, "gross_total": 1271.48, "base_fare": 821, "tax": 450.48, "sell": { "currency": "EUR", "total": 1271.48, "base_fare": 821, "tax": 450.48 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTI3MS40OCwiYmFzZV9mYXJlIjo4MjEsInRheCI6NDUwLjQ4fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTI3MS40OCwiYmFzZV9mYXJlIjo4MjEsInRheCI6NDUwLjQ4LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjEyNzEuNDgsImJhc2VfZmFyZSI6ODIxLCJ0YXgiOjQ1MC40OH19", "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": 1271.48, "base_fare": 821, "tax": 450.48, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "821.00", "tax": "450.48", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1271.48, "base_fare": 821, "tax": 450.48, "gross": { "base_fare": "821.00", "tax": "450.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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjEyNzEuNDgiLCJiYXNlX2ZhcmUiOiI4MjEuMDAiLCJ0YXgiOiI0NTAuNDgiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI4MjEuMDAiLCJ0YXgiOiI0NTAuNDgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMjcxLjQ4IiwiYmFzZV9mYXJlIjoiODIxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODIxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTI3MS40OCIsImJhc2VfZmFyZSI6IjgyMS4wMCIsInRheCI6IjQ1MC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMjcxLjQ4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1271.48, "filter": { "id": "F1MS00008-37", "price": 1271.48, "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": 4, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-11-20T06:00:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T13:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611200600cdg2026112007551029cdg202611201050cky202611201810768cky202701102035cdg202701110600769cdg202701111210blq2027011113551328", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-38", "journey_type": "RoundTrip", "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": "PT23H15M", "transit_time": "PT23H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p50", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T14:50:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T16:45:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1329" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1329" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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-11-21T16:00:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-21T21:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT5H10M", "distance": 2871, "lay_over": "PT23H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-38", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D1H15M", "transit_time": "PT1D1H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p55", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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": "2027-01-11T08:00:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T09:45:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT02H00M", "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": "1228" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1228" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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": 1282.47, "gross_total": 1282.47, "base_fare": 821, "tax": 461.47, "sell": { "currency": "EUR", "total": 1282.47, "base_fare": 821, "tax": 461.47 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTI4Mi40NywiYmFzZV9mYXJlIjo4MjEsInRheCI6NDYxLjQ3fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTI4Mi40NywiYmFzZV9mYXJlIjo4MjEsInRheCI6NDYxLjQ3LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjEyODIuNDcsImJhc2VfZmFyZSI6ODIxLCJ0YXgiOjQ2MS40N319", "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": 1282.47, "base_fare": 821, "tax": 461.47, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "821.00", "tax": "461.47", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1282.47, "base_fare": 821, "tax": 461.47, "gross": { "base_fare": "821.00", "tax": "461.47", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjEyODIuNDciLCJiYXNlX2ZhcmUiOiI4MjEuMDAiLCJ0YXgiOiI0NjEuNDciLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI4MjEuMDAiLCJ0YXgiOiI0NjEuNDciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMjgyLjQ3IiwiYmFzZV9mYXJlIjoiODIxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODIxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTI4Mi40NyIsImJhc2VfZmFyZSI6IjgyMS4wMCIsInRheCI6IjQ2MS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMjgyLjQ3LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1282.47, "filter": { "id": "F1MS00008-38", "price": 1282.47, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T14:50:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T09:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201450cdg2026112016451329cdg202611211600cky202611212110592cky202701102035cdg202701110600769cdg202701110800blq2027011109451228", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-39", "journey_type": "RoundTrip", "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": "PT23H15M", "transit_time": "PT23H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p50", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T14:50:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T16:45:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1329" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1329" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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-11-21T16:00:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-21T21:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT5H10M", "distance": 2871, "lay_over": "PT23H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-39", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D5H25M", "transit_time": "PT1D5H25M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p56", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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": "2027-01-11T12:10:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T13:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT06H10M", "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": "1328" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1328" }, "booking_class": { "cabin_class": "Light", "cabin_code": "LIGHTBAG", "booking_code": "LIGHTBAG", "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": 1282.47, "gross_total": 1282.47, "base_fare": 821, "tax": 461.47, "sell": { "currency": "EUR", "total": 1282.47, "base_fare": 821, "tax": 461.47 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTI4Mi40NywiYmFzZV9mYXJlIjo4MjEsInRheCI6NDYxLjQ3fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTI4Mi40NywiYmFzZV9mYXJlIjo4MjEsInRheCI6NDYxLjQ3LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjEyODIuNDcsImJhc2VfZmFyZSI6ODIxLCJ0YXgiOjQ2MS40N319", "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": 1282.47, "base_fare": 821, "tax": 461.47, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "821.00", "tax": "461.47", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1282.47, "base_fare": 821, "tax": 461.47, "gross": { "base_fare": "821.00", "tax": "461.47", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjEyODIuNDciLCJiYXNlX2ZhcmUiOiI4MjEuMDAiLCJ0YXgiOiI0NjEuNDciLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI4MjEuMDAiLCJ0YXgiOiI0NjEuNDciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxMjgyLjQ3IiwiYmFzZV9mYXJlIjoiODIxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiODIxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTI4Mi40NyIsImJhc2VfZmFyZSI6IjgyMS4wMCIsInRheCI6IjQ2MS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxMjgyLjQ3LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1282.47, "filter": { "id": "F1MS00008-39", "price": 1282.47, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T14:50:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T13:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201450cdg2026112016451329cdg202611211600cky202611212110592cky202701102035cdg202701110600769cdg202701111210blq2027011113551328", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-40", "journey_type": "RoundTrip", "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": "PT2H55M", "transit_time": "PT2H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p36", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T06:00:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T07:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1029" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1029" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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": "CDG", "departure_time": "2026-11-20T10:50:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-20T18:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT7H20M", "distance": 2871, "lay_over": "PT02H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-40", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT4H55M", "transit_time": "PT4H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p42", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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": "CDG", "departure_time": "2027-01-11T08:00:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T09:45:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT02H00M", "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": "1228" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1228" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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": 1401.48, "gross_total": 1401.48, "base_fare": 951, "tax": 450.48, "sell": { "currency": "EUR", "total": 1401.48, "base_fare": 951, "tax": 450.48 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQwMS40OCwiYmFzZV9mYXJlIjo5NTEsInRheCI6NDUwLjQ4fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQwMS40OCwiYmFzZV9mYXJlIjo5NTEsInRheCI6NDUwLjQ4LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE0MDEuNDgsImJhc2VfZmFyZSI6OTUxLCJ0YXgiOjQ1MC40OH19", "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": 1401.48, "base_fare": 951, "tax": 450.48, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "951.00", "tax": "450.48", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1401.48, "base_fare": 951, "tax": 450.48, "gross": { "base_fare": "951.00", "tax": "450.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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0MDEuNDgiLCJiYXNlX2ZhcmUiOiI5NTEuMDAiLCJ0YXgiOiI0NTAuNDgiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI5NTEuMDAiLCJ0YXgiOiI0NTAuNDgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxNDAxLjQ4IiwiYmFzZV9mYXJlIjoiOTUxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiOTUxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTQwMS40OCIsImJhc2VfZmFyZSI6Ijk1MS4wMCIsInRheCI6IjQ1MC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxNDAxLjQ4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1401.48, "filter": { "id": "F1MS00008-40", "price": 1401.48, "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": 4, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-11-20T06:00:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T09:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611200600cdg2026112007551029cdg202611201050cky202611201810768cky202701102035cdg202701110600769cdg202701110800blq2027011109451228", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-41", "journey_type": "RoundTrip", "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": "PT2H55M", "transit_time": "PT2H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p36", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T06:00:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T07:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1029" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1029" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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": "CDG", "departure_time": "2026-11-20T10:50:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-20T18:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT7H20M", "distance": 2871, "lay_over": "PT02H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-41", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT9H5M", "transit_time": "PT9H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p43", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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": "CDG", "departure_time": "2027-01-11T12:10:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T13:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT06H10M", "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": "1328" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1328" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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": 1401.48, "gross_total": 1401.48, "base_fare": 951, "tax": 450.48, "sell": { "currency": "EUR", "total": 1401.48, "base_fare": 951, "tax": 450.48 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQwMS40OCwiYmFzZV9mYXJlIjo5NTEsInRheCI6NDUwLjQ4fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQwMS40OCwiYmFzZV9mYXJlIjo5NTEsInRheCI6NDUwLjQ4LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE0MDEuNDgsImJhc2VfZmFyZSI6OTUxLCJ0YXgiOjQ1MC40OH19", "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": 1401.48, "base_fare": 951, "tax": 450.48, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "951.00", "tax": "450.48", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1401.48, "base_fare": 951, "tax": 450.48, "gross": { "base_fare": "951.00", "tax": "450.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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0MDEuNDgiLCJiYXNlX2ZhcmUiOiI5NTEuMDAiLCJ0YXgiOiI0NTAuNDgiLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI5NTEuMDAiLCJ0YXgiOiI0NTAuNDgiLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxNDAxLjQ4IiwiYmFzZV9mYXJlIjoiOTUxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiOTUxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTQwMS40OCIsImJhc2VfZmFyZSI6Ijk1MS4wMCIsInRheCI6IjQ1MC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxNDAxLjQ4LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1401.48, "filter": { "id": "F1MS00008-41", "price": 1401.48, "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": 4, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-11-20T06:00:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T13:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611200600cdg2026112007551029cdg202611201050cky202611201810768cky202701102035cdg202701110600769cdg202701111210blq2027011113551328", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-42", "journey_type": "RoundTrip", "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": "PT23H15M", "transit_time": "PT23H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p51", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T14:50:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T16:45:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1329" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1329" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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": "CDG", "departure_time": "2026-11-21T16:00:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-21T21:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT5H10M", "distance": 2871, "lay_over": "PT23H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-42", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D1H15M", "transit_time": "PT1D1H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p57", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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": "CDG", "departure_time": "2027-01-11T08:00:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T09:45:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT02H00M", "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": "1228" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1228" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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": 1412.47, "gross_total": 1412.47, "base_fare": 951, "tax": 461.47, "sell": { "currency": "EUR", "total": 1412.47, "base_fare": 951, "tax": 461.47 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQxMi40NywiYmFzZV9mYXJlIjo5NTEsInRheCI6NDYxLjQ3fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQxMi40NywiYmFzZV9mYXJlIjo5NTEsInRheCI6NDYxLjQ3LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE0MTIuNDcsImJhc2VfZmFyZSI6OTUxLCJ0YXgiOjQ2MS40N319", "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": 1412.47, "base_fare": 951, "tax": 461.47, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "951.00", "tax": "461.47", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1412.47, "base_fare": 951, "tax": 461.47, "gross": { "base_fare": "951.00", "tax": "461.47", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0MTIuNDciLCJiYXNlX2ZhcmUiOiI5NTEuMDAiLCJ0YXgiOiI0NjEuNDciLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI5NTEuMDAiLCJ0YXgiOiI0NjEuNDciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxNDEyLjQ3IiwiYmFzZV9mYXJlIjoiOTUxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiOTUxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTQxMi40NyIsImJhc2VfZmFyZSI6Ijk1MS4wMCIsInRheCI6IjQ2MS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxNDEyLjQ3LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1412.47, "filter": { "id": "F1MS00008-42", "price": 1412.47, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T14:50:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T09:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201450cdg2026112016451329cdg202611211600cky202611212110592cky202701102035cdg202701110600769cdg202701110800blq2027011109451228", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-43", "journey_type": "RoundTrip", "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": "PT23H15M", "transit_time": "PT23H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p51", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T14:50:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T16:45:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1329" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1329" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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": "CDG", "departure_time": "2026-11-21T16:00:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-21T21:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT5H10M", "distance": 2871, "lay_over": "PT23H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-43", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D5H25M", "transit_time": "PT1D5H25M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p58", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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": "CDG", "departure_time": "2027-01-11T12:10:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T13:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT06H10M", "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": "1328" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1328" }, "booking_class": { "cabin_class": "Standard", "cabin_code": "STANDARD3", "booking_code": "STANDARD3", "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": 1412.47, "gross_total": 1412.47, "base_fare": 951, "tax": 461.47, "sell": { "currency": "EUR", "total": 1412.47, "base_fare": 951, "tax": 461.47 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQxMi40NywiYmFzZV9mYXJlIjo5NTEsInRheCI6NDYxLjQ3fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTQxMi40NywiYmFzZV9mYXJlIjo5NTEsInRheCI6NDYxLjQ3LCJjb21pc3Npb25fdHlwZSI6ImdlbmVyYWwiLCJjb21pc3Npb25fdmFsdWUiOjB9LCJncm9zc19mYXJlIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE0MTIuNDcsImJhc2VfZmFyZSI6OTUxLCJ0YXgiOjQ2MS40N319", "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": 1412.47, "base_fare": 951, "tax": 461.47, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "951.00", "tax": "461.47", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1412.47, "base_fare": 951, "tax": 461.47, "gross": { "base_fare": "951.00", "tax": "461.47", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE0MTIuNDciLCJiYXNlX2ZhcmUiOiI5NTEuMDAiLCJ0YXgiOiI0NjEuNDciLCJncm9zcyI6eyJiYXNlX2ZhcmUiOiI5NTEuMDAiLCJ0YXgiOiI0NjEuNDciLCJkaXNjb3VudCI6IjAuMDAiLCJhaXQiOiIwLjAwIiwic2VydmljZV9jaGFyZ2UiOiIwLjAwIn0sImNvbmZpZyI6eyJtYXJrdXBfdHlwZSI6bnVsbCwibWFya3VwX3RpdGxlIjpudWxsLCJyZXZlbnVlIjoiMC4wMCIsInRpY2tldF9pc3N1ZV9jaGFyZ2UiOiIwLjAwIiwidG90YWxfdGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJjdXJyZW5jeUV4Y2hhbmdlUmF0ZSI6IjEuMDAiLCJGTUdfT3ZlcndyaXRlUnVsZXMiOltdfX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOiIxNDEyLjQ3IiwiYmFzZV9mYXJlIjoiOTUxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiOTUxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjowLCJwZXJfc2VnbWVudF9kaXNjb3VudCI6MCwic2VnbWVudF9kaXNjb3VudCI6IjAuMDAiLCJzdXBwbGllcl9zZWdtZW50X2ZlZXNDYWxjdWxhdGUiOm51bGwsInNlZ21lbnRfZGlzY291bnRfYWNjb3VudFB1cnBvc2UiOm51bGx9fSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkVVUiIsInRvdGFsIjoiMTQxMi40NyIsImJhc2VfZmFyZSI6Ijk1MS4wMCIsInRheCI6IjQ2MS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjoxNDEyLjQ3LCJ0YXhCcmVha2Rvd24iOnsiQkQiOnsiYW1vdW50IjoiMC4wMCJ9LCJVVCI6eyJhbW91bnQiOiIwLjAwIn0sIkU1Ijp7ImFtb3VudCI6IjAuMDAifSwiWVEiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUiI6eyJhbW91bnQiOiIwLjAwIn0sIk90aGVyIjp7ImFtb3VudCI6IjAuMDAifSwic3VwcGxpZXJUYXhEYXRhIjpbXX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1412.47, "filter": { "id": "F1MS00008-43", "price": 1412.47, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T14:50:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T13:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201450cdg2026112016451329cdg202611211600cky202611212110592cky202701102035cdg202701110600769cdg202701111210blq2027011113551328", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-44", "journey_type": "RoundTrip", "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": "PT2H55M", "transit_time": "PT2H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p37", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T06:00:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T07:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1029" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1029" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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": "CDG", "departure_time": "2026-11-20T10:50:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-20T18:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT7H20M", "distance": 2871, "lay_over": "PT02H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-44", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT4H55M", "transit_time": "PT4H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p44", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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": "CDG", "departure_time": "2027-01-11T08:00:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T09:45:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT02H00M", "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": "1228" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1228" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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": 1571.48, "gross_total": 1571.48, "base_fare": 1121, "tax": 450.48, "sell": { "currency": "EUR", "total": 1571.48, "base_fare": 1121, "tax": 450.48 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU3MS40OCwiYmFzZV9mYXJlIjoxMTIxLCJ0YXgiOjQ1MC40OH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE1NzEuNDgsImJhc2VfZmFyZSI6MTEyMSwidGF4Ijo0NTAuNDgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU3MS40OCwiYmFzZV9mYXJlIjoxMTIxLCJ0YXgiOjQ1MC40OH19", "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": 1571.48, "base_fare": 1121, "tax": 450.48, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1121.00", "tax": "450.48", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1571.48, "base_fare": 1121, "tax": 450.48, "gross": { "base_fare": "1121.00", "tax": "450.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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1NzEuNDgiLCJiYXNlX2ZhcmUiOiIxMTIxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTEyMS4wMCIsInRheCI6IjQ1MC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1NzEuNDgiLCJiYXNlX2ZhcmUiOiIxMTIxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTEyMS4wMCIsInRheCI6IjQ1MC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1NzEuNDgiLCJiYXNlX2ZhcmUiOiIxMTIxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjE1NzEuNDgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1571.48, "filter": { "id": "F1MS00008-44", "price": 1571.48, "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": 4, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-11-20T06:00:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T09:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611200600cdg2026112007551029cdg202611201050cky202611201810768cky202701102035cdg202701110600769cdg202701110800blq2027011109451228", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-45", "journey_type": "RoundTrip", "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": "PT2H55M", "transit_time": "PT2H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p37", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T06:00:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T07:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1029" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1029" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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": "CDG", "departure_time": "2026-11-20T10:50:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-20T18:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT7H20M", "distance": 2871, "lay_over": "PT02H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-45", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT9H5M", "transit_time": "PT9H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p45", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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": "CDG", "departure_time": "2027-01-11T12:10:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T13:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT06H10M", "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": "1328" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1328" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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": 1571.48, "gross_total": 1571.48, "base_fare": 1121, "tax": 450.48, "sell": { "currency": "EUR", "total": 1571.48, "base_fare": 1121, "tax": 450.48 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU3MS40OCwiYmFzZV9mYXJlIjoxMTIxLCJ0YXgiOjQ1MC40OH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE1NzEuNDgsImJhc2VfZmFyZSI6MTEyMSwidGF4Ijo0NTAuNDgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU3MS40OCwiYmFzZV9mYXJlIjoxMTIxLCJ0YXgiOjQ1MC40OH19", "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": 1571.48, "base_fare": 1121, "tax": 450.48, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1121.00", "tax": "450.48", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1571.48, "base_fare": 1121, "tax": 450.48, "gross": { "base_fare": "1121.00", "tax": "450.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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1NzEuNDgiLCJiYXNlX2ZhcmUiOiIxMTIxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTEyMS4wMCIsInRheCI6IjQ1MC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1NzEuNDgiLCJiYXNlX2ZhcmUiOiIxMTIxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTEyMS4wMCIsInRheCI6IjQ1MC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1NzEuNDgiLCJiYXNlX2ZhcmUiOiIxMTIxLjAwIiwidGF4IjoiNDUwLjQ4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjE1NzEuNDgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1571.48, "filter": { "id": "F1MS00008-45", "price": 1571.48, "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": 4, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-11-20T06:00:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T13:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611200600cdg2026112007551029cdg202611201050cky202611201810768cky202701102035cdg202701110600769cdg202701111210blq2027011113551328", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-46", "journey_type": "RoundTrip", "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": "PT23H15M", "transit_time": "PT23H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p52", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T14:50:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T16:45:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1329" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1329" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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": "CDG", "departure_time": "2026-11-21T16:00:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-21T21:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT5H10M", "distance": 2871, "lay_over": "PT23H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-46", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D1H15M", "transit_time": "PT1D1H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p59", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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": "CDG", "departure_time": "2027-01-11T08:00:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T09:45:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT02H00M", "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": "1228" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1228" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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": 1582.47, "gross_total": 1582.47, "base_fare": 1121, "tax": 461.47, "sell": { "currency": "EUR", "total": 1582.47, "base_fare": 1121, "tax": 461.47 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU4Mi40NywiYmFzZV9mYXJlIjoxMTIxLCJ0YXgiOjQ2MS40N30sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE1ODIuNDcsImJhc2VfZmFyZSI6MTEyMSwidGF4Ijo0NjEuNDcsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU4Mi40NywiYmFzZV9mYXJlIjoxMTIxLCJ0YXgiOjQ2MS40N319", "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": 1582.47, "base_fare": 1121, "tax": 461.47, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1121.00", "tax": "461.47", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1582.47, "base_fare": 1121, "tax": 461.47, "gross": { "base_fare": "1121.00", "tax": "461.47", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1ODIuNDciLCJiYXNlX2ZhcmUiOiIxMTIxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTEyMS4wMCIsInRheCI6IjQ2MS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1ODIuNDciLCJiYXNlX2ZhcmUiOiIxMTIxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTEyMS4wMCIsInRheCI6IjQ2MS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1ODIuNDciLCJiYXNlX2ZhcmUiOiIxMTIxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjE1ODIuNDcsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1582.47, "filter": { "id": "F1MS00008-46", "price": 1582.47, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T14:50:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T09:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201450cdg2026112016451329cdg202611211600cky202611212110592cky202701102035cdg202701110600769cdg202701110800blq2027011109451228", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-47", "journey_type": "RoundTrip", "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": "PT23H15M", "transit_time": "PT23H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p52", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T14:50:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T16:45:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1329" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1329" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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": "CDG", "departure_time": "2026-11-21T16:00:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-21T21:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT5H10M", "distance": 2871, "lay_over": "PT23H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-47", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D5H25M", "transit_time": "PT1D5H25M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p60", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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": "CDG", "departure_time": "2027-01-11T12:10:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T13:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT06H10M", "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": "1328" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1328" }, "booking_class": { "cabin_class": "Flex", "cabin_code": "FLEX1", "booking_code": "FLEX1", "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": 1582.47, "gross_total": 1582.47, "base_fare": 1121, "tax": 461.47, "sell": { "currency": "EUR", "total": 1582.47, "base_fare": 1121, "tax": 461.47 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU4Mi40NywiYmFzZV9mYXJlIjoxMTIxLCJ0YXgiOjQ2MS40N30sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjE1ODIuNDcsImJhc2VfZmFyZSI6MTEyMSwidGF4Ijo0NjEuNDcsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MTU4Mi40NywiYmFzZV9mYXJlIjoxMTIxLCJ0YXgiOjQ2MS40N319", "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": 1582.47, "base_fare": 1121, "tax": 461.47, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1121.00", "tax": "461.47", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 1582.47, "base_fare": 1121, "tax": 461.47, "gross": { "base_fare": "1121.00", "tax": "461.47", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1ODIuNDciLCJiYXNlX2ZhcmUiOiIxMTIxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTEyMS4wMCIsInRheCI6IjQ2MS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1ODIuNDciLCJiYXNlX2ZhcmUiOiIxMTIxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTEyMS4wMCIsInRheCI6IjQ2MS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjE1ODIuNDciLCJiYXNlX2ZhcmUiOiIxMTIxLjAwIiwidGF4IjoiNDYxLjQ3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjE1ODIuNDcsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 1582.47, "filter": { "id": "F1MS00008-47", "price": 1582.47, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T14:50:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T13:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201450cdg2026112016451329cdg202611211600cky202611212110592cky202701102035cdg202701110600769cdg202701111210blq2027011113551328", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-48", "journey_type": "RoundTrip", "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": "PT2H55M", "transit_time": "PT2H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p39", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T06:00:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T07:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1029" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1029" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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": "CDG", "departure_time": "2026-11-20T10:50:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-20T18:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT7H20M", "distance": 2871, "lay_over": "PT02H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-48", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT4H55M", "transit_time": "PT4H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p48", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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": "2027-01-11T08:00:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T09:45:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT02H00M", "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": "1228" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1228" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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": 2310.48, "gross_total": 2310.48, "base_fare": 1756, "tax": 554.48, "sell": { "currency": "EUR", "total": 2310.48, "base_fare": 1756, "tax": 554.48 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjMxMC40OCwiYmFzZV9mYXJlIjoxNzU2LCJ0YXgiOjU1NC40OH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzMTAuNDgsImJhc2VfZmFyZSI6MTc1NiwidGF4Ijo1NTQuNDgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjMxMC40OCwiYmFzZV9mYXJlIjoxNzU2LCJ0YXgiOjU1NC40OH19", "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": 2310.48, "base_fare": 1756, "tax": 554.48, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1756.00", "tax": "554.48", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2310.48, "base_fare": 1756, "tax": 554.48, "gross": { "base_fare": "1756.00", "tax": "554.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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzMTAuNDgiLCJiYXNlX2ZhcmUiOiIxNzU2LjAwIiwidGF4IjoiNTU0LjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTc1Ni4wMCIsInRheCI6IjU1NC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzMTAuNDgiLCJiYXNlX2ZhcmUiOiIxNzU2LjAwIiwidGF4IjoiNTU0LjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTc1Ni4wMCIsInRheCI6IjU1NC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzMTAuNDgiLCJiYXNlX2ZhcmUiOiIxNzU2LjAwIiwidGF4IjoiNTU0LjQ4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzMTAuNDgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2310.48, "filter": { "id": "F1MS00008-48", "price": 2310.48, "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": "Premium Light", "connecting_airport": [ "CDG" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-11-20T06:00:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T09:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611200600cdg2026112007551029cdg202611201050cky202611201810768cky202701102035cdg202701110600769cdg202701110800blq2027011109451228", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-49", "journey_type": "RoundTrip", "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": "PT2H55M", "transit_time": "PT2H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p39", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T06:00:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T07:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1029" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1029" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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": "CDG", "departure_time": "2026-11-20T10:50:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-20T18:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT7H20M", "distance": 2871, "lay_over": "PT02H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-49", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT9H5M", "transit_time": "PT9H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p49", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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": "2027-01-11T12:10:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T13:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT06H10M", "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": "1328" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1328" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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": 2310.48, "gross_total": 2310.48, "base_fare": 1756, "tax": 554.48, "sell": { "currency": "EUR", "total": 2310.48, "base_fare": 1756, "tax": 554.48 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjMxMC40OCwiYmFzZV9mYXJlIjoxNzU2LCJ0YXgiOjU1NC40OH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzMTAuNDgsImJhc2VfZmFyZSI6MTc1NiwidGF4Ijo1NTQuNDgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjMxMC40OCwiYmFzZV9mYXJlIjoxNzU2LCJ0YXgiOjU1NC40OH19", "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": 2310.48, "base_fare": 1756, "tax": 554.48, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1756.00", "tax": "554.48", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2310.48, "base_fare": 1756, "tax": 554.48, "gross": { "base_fare": "1756.00", "tax": "554.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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzMTAuNDgiLCJiYXNlX2ZhcmUiOiIxNzU2LjAwIiwidGF4IjoiNTU0LjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTc1Ni4wMCIsInRheCI6IjU1NC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzMTAuNDgiLCJiYXNlX2ZhcmUiOiIxNzU2LjAwIiwidGF4IjoiNTU0LjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTc1Ni4wMCIsInRheCI6IjU1NC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzMTAuNDgiLCJiYXNlX2ZhcmUiOiIxNzU2LjAwIiwidGF4IjoiNTU0LjQ4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzMTAuNDgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2310.48, "filter": { "id": "F1MS00008-49", "price": 2310.48, "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": "Premium Light", "connecting_airport": [ "CDG" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-11-20T06:00:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T13:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611200600cdg2026112007551029cdg202611201050cky202611201810768cky202701102035cdg202701110600769cdg202701111210blq2027011113551328", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-50", "journey_type": "RoundTrip", "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": "PT23H15M", "transit_time": "PT23H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p54", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T14:50:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T16:45:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1329" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1329" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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": "CDG", "departure_time": "2026-11-21T16:00:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-21T21:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT5H10M", "distance": 2871, "lay_over": "PT23H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-50", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D1H15M", "transit_time": "PT1D1H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p63", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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": "2027-01-11T08:00:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T09:45:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT02H00M", "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": "1228" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1228" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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": 2321.47, "gross_total": 2321.47, "base_fare": 1756, "tax": 565.47, "sell": { "currency": "EUR", "total": 2321.47, "base_fare": 1756, "tax": 565.47 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjMyMS40NywiYmFzZV9mYXJlIjoxNzU2LCJ0YXgiOjU2NS40N30sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzMjEuNDcsImJhc2VfZmFyZSI6MTc1NiwidGF4Ijo1NjUuNDcsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjMyMS40NywiYmFzZV9mYXJlIjoxNzU2LCJ0YXgiOjU2NS40N319", "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": 2321.47, "base_fare": 1756, "tax": 565.47, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1756.00", "tax": "565.47", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2321.47, "base_fare": 1756, "tax": 565.47, "gross": { "base_fare": "1756.00", "tax": "565.47", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzMjEuNDciLCJiYXNlX2ZhcmUiOiIxNzU2LjAwIiwidGF4IjoiNTY1LjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTc1Ni4wMCIsInRheCI6IjU2NS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzMjEuNDciLCJiYXNlX2ZhcmUiOiIxNzU2LjAwIiwidGF4IjoiNTY1LjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTc1Ni4wMCIsInRheCI6IjU2NS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzMjEuNDciLCJiYXNlX2ZhcmUiOiIxNzU2LjAwIiwidGF4IjoiNTY1LjQ3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzMjEuNDcsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2321.47, "filter": { "id": "F1MS00008-50", "price": 2321.47, "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": "Premium Light", "connecting_airport": [ "CDG" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T14:50:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T09:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201450cdg2026112016451329cdg202611211600cky202611212110592cky202701102035cdg202701110600769cdg202701110800blq2027011109451228", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-51", "journey_type": "RoundTrip", "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": "PT23H15M", "transit_time": "PT23H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p54", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T14:50:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T16:45:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1329" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1329" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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": "CDG", "departure_time": "2026-11-21T16:00:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-21T21:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT5H10M", "distance": 2871, "lay_over": "PT23H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-51", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D5H25M", "transit_time": "PT1D5H25M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p64", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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": "2027-01-11T12:10:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T13:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT06H10M", "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": "1328" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1328" }, "booking_class": { "cabin_class": "Premium Light", "cabin_code": "PREMLIGHTB", "booking_code": "PREMLIGHTB", "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": 2321.47, "gross_total": 2321.47, "base_fare": 1756, "tax": 565.47, "sell": { "currency": "EUR", "total": 2321.47, "base_fare": 1756, "tax": 565.47 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjMyMS40NywiYmFzZV9mYXJlIjoxNzU2LCJ0YXgiOjU2NS40N30sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzMjEuNDcsImJhc2VfZmFyZSI6MTc1NiwidGF4Ijo1NjUuNDcsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjMyMS40NywiYmFzZV9mYXJlIjoxNzU2LCJ0YXgiOjU2NS40N319", "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": 2321.47, "base_fare": 1756, "tax": 565.47, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1756.00", "tax": "565.47", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2321.47, "base_fare": 1756, "tax": 565.47, "gross": { "base_fare": "1756.00", "tax": "565.47", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzMjEuNDciLCJiYXNlX2ZhcmUiOiIxNzU2LjAwIiwidGF4IjoiNTY1LjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTc1Ni4wMCIsInRheCI6IjU2NS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzMjEuNDciLCJiYXNlX2ZhcmUiOiIxNzU2LjAwIiwidGF4IjoiNTY1LjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTc1Ni4wMCIsInRheCI6IjU2NS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzMjEuNDciLCJiYXNlX2ZhcmUiOiIxNzU2LjAwIiwidGF4IjoiNTY1LjQ3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzMjEuNDcsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2321.47, "filter": { "id": "F1MS00008-51", "price": 2321.47, "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": "Premium Light", "connecting_airport": [ "CDG" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T14:50:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T13:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201450cdg2026112016451329cdg202611211600cky202611212110592cky202701102035cdg202701110600769cdg202701111210blq2027011113551328", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-52", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p9", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-52", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H15M", "transit_time": "PT3H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p27", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2365.61, "gross_total": 2365.61, "base_fare": 1706, "tax": 659.61, "sell": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzNjUuNjEsImJhc2VfZmFyZSI6MTcwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX19", "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": 2365.61, "base_fare": 1706, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1706.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61, "gross": { "base_fare": "1706.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzNjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2365.61, "filter": { "id": "F1MS00008-52", "price": 2365.61, "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": "Bus Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-53", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p9", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-53", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H5M", "transit_time": "PT8H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p28", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2365.61, "gross_total": 2365.61, "base_fare": 1706, "tax": 659.61, "sell": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzNjUuNjEsImJhc2VfZmFyZSI6MTcwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX19", "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": 2365.61, "base_fare": 1706, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1706.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61, "gross": { "base_fare": "1706.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzNjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2365.61, "filter": { "id": "F1MS00008-53", "price": 2365.61, "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": "Bus Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-54", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p9", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-54", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT10H5M", "transit_time": "PT10H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p29", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2365.61, "gross_total": 2365.61, "base_fare": 1706, "tax": 659.61, "sell": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzNjUuNjEsImJhc2VfZmFyZSI6MTcwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX19", "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": 2365.61, "base_fare": 1706, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1706.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61, "gross": { "base_fare": "1706.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzNjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2365.61, "filter": { "id": "F1MS00008-54", "price": 2365.61, "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": "Bus Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-55", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p9", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-55", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT14H55M", "transit_time": "PT14H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p30", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2365.61, "gross_total": 2365.61, "base_fare": 1706, "tax": 659.61, "sell": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzNjUuNjEsImJhc2VfZmFyZSI6MTcwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX19", "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": 2365.61, "base_fare": 1706, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1706.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61, "gross": { "base_fare": "1706.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzNjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2365.61, "filter": { "id": "F1MS00008-55", "price": 2365.61, "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": "Bus Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-56", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p10", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-56", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H5M", "transit_time": "PT8H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p27", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2365.61, "gross_total": 2365.61, "base_fare": 1706, "tax": 659.61, "sell": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzNjUuNjEsImJhc2VfZmFyZSI6MTcwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX19", "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": 2365.61, "base_fare": 1706, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1706.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61, "gross": { "base_fare": "1706.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzNjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2365.61, "filter": { "id": "F1MS00008-56", "price": 2365.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-57", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p10", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-57", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H55M", "transit_time": "PT12H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p28", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2365.61, "gross_total": 2365.61, "base_fare": 1706, "tax": 659.61, "sell": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzNjUuNjEsImJhc2VfZmFyZSI6MTcwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX19", "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": 2365.61, "base_fare": 1706, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1706.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61, "gross": { "base_fare": "1706.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzNjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2365.61, "filter": { "id": "F1MS00008-57", "price": 2365.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-58", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p10", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-58", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT14H55M", "transit_time": "PT14H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p29", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2365.61, "gross_total": 2365.61, "base_fare": 1706, "tax": 659.61, "sell": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzNjUuNjEsImJhc2VfZmFyZSI6MTcwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX19", "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": 2365.61, "base_fare": 1706, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1706.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61, "gross": { "base_fare": "1706.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzNjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2365.61, "filter": { "id": "F1MS00008-58", "price": 2365.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-59", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p10", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-59", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT19H45M", "transit_time": "PT19H45M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p30", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2365.61, "gross_total": 2365.61, "base_fare": 1706, "tax": 659.61, "sell": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzNjUuNjEsImJhc2VfZmFyZSI6MTcwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX19", "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": 2365.61, "base_fare": 1706, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1706.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61, "gross": { "base_fare": "1706.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzNjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2365.61, "filter": { "id": "F1MS00008-59", "price": 2365.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-60", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p11", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-60", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT20H20M", "transit_time": "PT20H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p27", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2365.61, "gross_total": 2365.61, "base_fare": 1706, "tax": 659.61, "sell": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzNjUuNjEsImJhc2VfZmFyZSI6MTcwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX19", "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": 2365.61, "base_fare": 1706, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1706.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61, "gross": { "base_fare": "1706.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzNjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2365.61, "filter": { "id": "F1MS00008-60", "price": 2365.61, "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": "Bus Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-61", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p11", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-61", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D1H10M", "transit_time": "PT1D1H10M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p28", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2365.61, "gross_total": 2365.61, "base_fare": 1706, "tax": 659.61, "sell": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzNjUuNjEsImJhc2VfZmFyZSI6MTcwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX19", "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": 2365.61, "base_fare": 1706, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1706.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61, "gross": { "base_fare": "1706.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzNjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2365.61, "filter": { "id": "F1MS00008-61", "price": 2365.61, "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": "Bus Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-62", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p11", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-62", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D3H10M", "transit_time": "PT1D3H10M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p29", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2365.61, "gross_total": 2365.61, "base_fare": 1706, "tax": 659.61, "sell": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzNjUuNjEsImJhc2VfZmFyZSI6MTcwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX19", "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": 2365.61, "base_fare": 1706, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1706.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61, "gross": { "base_fare": "1706.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzNjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2365.61, "filter": { "id": "F1MS00008-62", "price": 2365.61, "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": "Bus Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-63", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p11", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-63", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D8H0M", "transit_time": "PT1D8H0M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p30", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "booking_class": { "cabin_class": "Bus Classic", "cabin_code": "BCLASSIC", "booking_code": "BCLASSIC", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2365.61, "gross_total": 2365.61, "base_fare": 1706, "tax": 659.61, "sell": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjIzNjUuNjEsImJhc2VfZmFyZSI6MTcwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6MjM2NS42MSwiYmFzZV9mYXJlIjoxNzA2LCJ0YXgiOjY1OS42MX19", "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": 2365.61, "base_fare": 1706, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "1706.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2365.61, "base_fare": 1706, "tax": 659.61, "gross": { "base_fare": "1706.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMTcwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjIzNjUuNjEiLCJiYXNlX2ZhcmUiOiIxNzA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjIzNjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2365.61, "filter": { "id": "F1MS00008-63", "price": 2365.61, "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": "Bus Classic", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-64", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p12", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-64", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT3H15M", "transit_time": "PT3H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p31", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2765.61, "gross_total": 2765.61, "base_fare": 2106, "tax": 659.61, "sell": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjUuNjEsImJhc2VfZmFyZSI6MjEwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX19", "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": 2765.61, "base_fare": 2106, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2106.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61, "gross": { "base_fare": "2106.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2765.61, "filter": { "id": "F1MS00008-64", "price": 2765.61, "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": "Bus Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-65", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p12", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-65", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H5M", "transit_time": "PT8H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p32", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2765.61, "gross_total": 2765.61, "base_fare": 2106, "tax": 659.61, "sell": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjUuNjEsImJhc2VfZmFyZSI6MjEwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX19", "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": 2765.61, "base_fare": 2106, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2106.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61, "gross": { "base_fare": "2106.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2765.61, "filter": { "id": "F1MS00008-65", "price": 2765.61, "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": "Bus Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-66", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p12", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-66", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT10H5M", "transit_time": "PT10H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p33", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2765.61, "gross_total": 2765.61, "base_fare": 2106, "tax": 659.61, "sell": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjUuNjEsImJhc2VfZmFyZSI6MjEwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX19", "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": 2765.61, "base_fare": 2106, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2106.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61, "gross": { "base_fare": "2106.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2765.61, "filter": { "id": "F1MS00008-66", "price": 2765.61, "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": "Bus Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-67", "journey_type": "RoundTrip", "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": "PT2H15M", "transit_time": "PT2H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p12", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT02H15M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-67", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT14H55M", "transit_time": "PT14H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p34", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2765.61, "gross_total": 2765.61, "base_fare": 2106, "tax": 659.61, "sell": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjUuNjEsImJhc2VfZmFyZSI6MjEwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX19", "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": 2765.61, "base_fare": 2106, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2106.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61, "gross": { "base_fare": "2106.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2765.61, "filter": { "id": "F1MS00008-67", "price": 2765.61, "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": "Bus Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-68", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p13", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-68", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT8H5M", "transit_time": "PT8H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p31", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2765.61, "gross_total": 2765.61, "base_fare": 2106, "tax": 659.61, "sell": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjUuNjEsImJhc2VfZmFyZSI6MjEwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX19", "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": 2765.61, "base_fare": 2106, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2106.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61, "gross": { "base_fare": "2106.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2765.61, "filter": { "id": "F1MS00008-68", "price": 2765.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-69", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p13", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-69", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT12H55M", "transit_time": "PT12H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p32", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2765.61, "gross_total": 2765.61, "base_fare": 2106, "tax": 659.61, "sell": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjUuNjEsImJhc2VfZmFyZSI6MjEwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX19", "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": 2765.61, "base_fare": 2106, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2106.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61, "gross": { "base_fare": "2106.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2765.61, "filter": { "id": "F1MS00008-69", "price": 2765.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-70", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p13", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-70", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT14H55M", "transit_time": "PT14H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p33", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2765.61, "gross_total": 2765.61, "base_fare": 2106, "tax": 659.61, "sell": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjUuNjEsImJhc2VfZmFyZSI6MjEwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX19", "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": 2765.61, "base_fare": 2106, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2106.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61, "gross": { "base_fare": "2106.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2765.61, "filter": { "id": "F1MS00008-70", "price": 2765.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-71", "journey_type": "RoundTrip", "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": "PT7H5M", "transit_time": "PT7H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p13", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T12:05:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T15:15:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "947" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "947" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-20T22:20:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T01:20:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT07H05M", "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": "527" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "527" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-71", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT19H45M", "transit_time": "PT19H45M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p34", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2765.61, "gross_total": 2765.61, "base_fare": 2106, "tax": 659.61, "sell": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjUuNjEsImJhc2VfZmFyZSI6MjEwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX19", "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": 2765.61, "base_fare": 2106, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2106.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61, "gross": { "base_fare": "2106.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2765.61, "filter": { "id": "F1MS00008-71", "price": 2765.61, "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": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T12:05:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201205cmn202611201515947cmn202611202220cky202611210120527cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-72", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p14", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-72", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT20H20M", "transit_time": "PT20H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p31", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-10T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT01H00M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2765.61, "gross_total": 2765.61, "base_fare": 2106, "tax": 659.61, "sell": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjUuNjEsImJhc2VfZmFyZSI6MjEwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX19", "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": 2765.61, "base_fare": 2106, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2106.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61, "gross": { "base_fare": "2106.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2765.61, "filter": { "id": "F1MS00008-72", "price": 2765.61, "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": "Bus Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-10T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701100220cmn202701100700526cmn202701100800blq202701101105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-73", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p14", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-73", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D1H10M", "transit_time": "PT1D1H10M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p32", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T02:20:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-10T07:00:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "526" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "526" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-10T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-10T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-10", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT05H50M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2765.61, "gross_total": 2765.61, "base_fare": 2106, "tax": 659.61, "sell": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjUuNjEsImJhc2VfZmFyZSI6MjEwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX19", "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": 2765.61, "base_fare": 2106, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2106.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61, "gross": { "base_fare": "2106.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2765.61, "filter": { "id": "F1MS00008-73", "price": 2765.61, "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": "Bus Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-10T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701100220cmn202701100700526cmn202701101250blq202701101555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-74", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p14", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-74", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D3H10M", "transit_time": "PT1D3H10M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p33", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-11T08:00:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T11:05:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT07H50M", "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": "946" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "946" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2765.61, "gross_total": 2765.61, "base_fare": 2106, "tax": 659.61, "sell": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjUuNjEsImJhc2VfZmFyZSI6MjEwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX19", "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": 2765.61, "base_fare": 2106, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2106.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61, "gross": { "base_fare": "2106.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2765.61, "filter": { "id": "F1MS00008-74", "price": 2765.61, "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": "Bus Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T11:05:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701101930cmn202701110010528cmn202701110800blq202701111105946", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-75", "journey_type": "RoundTrip", "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": "PT19H20M", "transit_time": "PT19H20M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o1", "productId": "p14", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T16:55:00", "origin_terminal": "1", "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CMN", "arrival_time": "2026-11-20T20:05:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2026-11-20", "flight_time": "PT3H10M", "distance": 1270, "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": "953" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "953" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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-11-21T15:25:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "CKY", "arrival_time": "2026-11-21T18:25:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT3H0M", "distance": 1689, "lay_over": "PT19H20M", "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": "529" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "529" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-75", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D8H0M", "transit_time": "PT1D8H0M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o2", "productId": "p34", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T19:30:00", "origin_terminal": "1", "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CMN", "arrival_time": "2027-01-11T00:10:00", "destination_terminal": "2", "destination_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "flight_date": "2027-01-10", "flight_time": "PT4H40M", "distance": 1689, "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": "528" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "528" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": "2027-01-11T12:50:00", "origin_terminal": "1", "origin_airport": { "name": "Mohammed V International Airport", "city": "Casablanca", "country": "Morocco", "timezone": "Africa\/Casablanca" }, "destination": "BLQ", "arrival_time": "2027-01-11T15:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT3H5M", "distance": 1270, "lay_over": "PT12H40M", "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": "952" }, "marketing": { "carrier": "AT", "carrier_name": "Royal Air Maroc", "carrier_logo": "AT.png", "flight_number": "952" }, "booking_class": { "cabin_class": "Bus Flex Premium", "cabin_code": "BFLEX", "booking_code": "BFLEX", "meal_code": null, "seat_available": 3 }, "baggages": { "checked": { "ADT": { "ptc_title": "Adult", "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": 3, "weight": 31.75, "unit": "kg", "title": "3 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": 2765.61, "gross_total": 2765.61, "base_fare": 2106, "tax": 659.61, "sell": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjI3NjUuNjEsImJhc2VfZmFyZSI6MjEwNiwidGF4Ijo2NTkuNjEsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6Mjc2NS42MSwiYmFzZV9mYXJlIjoyMTA2LCJ0YXgiOjY1OS42MX19", "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": 2765.61, "base_fare": 2106, "tax": 659.61, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "2106.00", "tax": "659.61", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 2765.61, "base_fare": 2106, "tax": 659.61, "gross": { "base_fare": "2106.00", "tax": "659.61", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMjEwNi4wMCIsInRheCI6IjY1OS42MSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjI3NjUuNjEiLCJiYXNlX2ZhcmUiOiIyMTA2LjAwIiwidGF4IjoiNjU5LjYxIiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjI3NjUuNjEsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 2765.61, "filter": { "id": "F1MS00008-75", "price": 2765.61, "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": "Bus Flex Premium", "connecting_airport": [ "CMN" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "evening", "departure_departure_time": "2026-11-20T16:55:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T15:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201655cmn202611202005953cmn202611211525cky202611211825529cky202701101930cmn202701110010528cmn202701111250blq202701111555952", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-76", "journey_type": "RoundTrip", "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": "PT2H55M", "transit_time": "PT2H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p38", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T06:00:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T07:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1029" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1029" }, "booking_class": { "cabin_class": "Full Flex", "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": 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": "CDG", "departure_time": "2026-11-20T10:50:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-20T18:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT7H20M", "distance": 2871, "lay_over": "PT02H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "booking_class": { "cabin_class": "Full Flex", "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-76", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT4H55M", "transit_time": "PT4H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p46", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Full Flex", "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": 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": "CDG", "departure_time": "2027-01-11T08:00:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T09:45:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT02H00M", "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": "1228" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1228" }, "booking_class": { "cabin_class": "Full Flex", "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": 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": 4378.48, "gross_total": 4378.48, "base_fare": 3928, "tax": 450.48, "sell": { "currency": "EUR", "total": 4378.48, "base_fare": 3928, "tax": 450.48 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM3OC40OCwiYmFzZV9mYXJlIjozOTI4LCJ0YXgiOjQ1MC40OH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQzNzguNDgsImJhc2VfZmFyZSI6MzkyOCwidGF4Ijo0NTAuNDgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM3OC40OCwiYmFzZV9mYXJlIjozOTI4LCJ0YXgiOjQ1MC40OH19", "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": 4378.48, "base_fare": 3928, "tax": 450.48, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "3928.00", "tax": "450.48", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 4378.48, "base_fare": 3928, "tax": 450.48, "gross": { "base_fare": "3928.00", "tax": "450.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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzNzguNDgiLCJiYXNlX2ZhcmUiOiIzOTI4LjAwIiwidGF4IjoiNDUwLjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzkyOC4wMCIsInRheCI6IjQ1MC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzNzguNDgiLCJiYXNlX2ZhcmUiOiIzOTI4LjAwIiwidGF4IjoiNDUwLjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzkyOC4wMCIsInRheCI6IjQ1MC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzNzguNDgiLCJiYXNlX2ZhcmUiOiIzOTI4LjAwIiwidGF4IjoiNDUwLjQ4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjQzNzguNDgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 4378.48, "filter": { "id": "F1MS00008-76", "price": 4378.48, "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": "Full Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-11-20T06:00:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T09:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611200600cdg2026112007551029cdg202611201050cky202611201810768cky202701102035cdg202701110600769cdg202701110800blq2027011109451228", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-77", "journey_type": "RoundTrip", "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": "PT2H55M", "transit_time": "PT2H55M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o3", "productId": "p38", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T06:00:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T07:55:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1029" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1029" }, "booking_class": { "cabin_class": "Full Flex", "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": 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": "CDG", "departure_time": "2026-11-20T10:50:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-20T18:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-20", "flight_time": "PT7H20M", "distance": 2871, "lay_over": "PT02H55M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "768" }, "booking_class": { "cabin_class": "Full Flex", "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-77", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT9H5M", "transit_time": "PT9H5M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o4", "productId": "p47", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Full Flex", "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": 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": "CDG", "departure_time": "2027-01-11T12:10:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T13:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT06H10M", "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": "1328" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1328" }, "booking_class": { "cabin_class": "Full Flex", "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": 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": 4378.48, "gross_total": 4378.48, "base_fare": 3928, "tax": 450.48, "sell": { "currency": "EUR", "total": 4378.48, "base_fare": 3928, "tax": 450.48 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM3OC40OCwiYmFzZV9mYXJlIjozOTI4LCJ0YXgiOjQ1MC40OH0sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQzNzguNDgsImJhc2VfZmFyZSI6MzkyOCwidGF4Ijo0NTAuNDgsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM3OC40OCwiYmFzZV9mYXJlIjozOTI4LCJ0YXgiOjQ1MC40OH19", "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": 4378.48, "base_fare": 3928, "tax": 450.48, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "3928.00", "tax": "450.48", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 4378.48, "base_fare": 3928, "tax": 450.48, "gross": { "base_fare": "3928.00", "tax": "450.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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzNzguNDgiLCJiYXNlX2ZhcmUiOiIzOTI4LjAwIiwidGF4IjoiNDUwLjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzkyOC4wMCIsInRheCI6IjQ1MC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzNzguNDgiLCJiYXNlX2ZhcmUiOiIzOTI4LjAwIiwidGF4IjoiNDUwLjQ4IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzkyOC4wMCIsInRheCI6IjQ1MC40OCIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzNzguNDgiLCJiYXNlX2ZhcmUiOiIzOTI4LjAwIiwidGF4IjoiNDUwLjQ4IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjQzNzguNDgsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 4378.48, "filter": { "id": "F1MS00008-77", "price": 4378.48, "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": "Full Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "early-morning", "departure_departure_time": "2026-11-20T06:00:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T13:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611200600cdg2026112007551029cdg202611201050cky202611201810768cky202701102035cdg202701110600769cdg202701111210blq2027011113551328", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-78", "journey_type": "RoundTrip", "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": "PT23H15M", "transit_time": "PT23H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p53", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T14:50:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T16:45:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1329" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1329" }, "booking_class": { "cabin_class": "Full Flex", "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": 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": "CDG", "departure_time": "2026-11-21T16:00:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-21T21:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT5H10M", "distance": 2871, "lay_over": "PT23H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "booking_class": { "cabin_class": "Full Flex", "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-78", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D1H15M", "transit_time": "PT1D1H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p61", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Full Flex", "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": 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": "CDG", "departure_time": "2027-01-11T08:00:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T09:45:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT02H00M", "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": "1228" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1228" }, "booking_class": { "cabin_class": "Full Flex", "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": 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": 4389.47, "gross_total": 4389.47, "base_fare": 3928, "tax": 461.47, "sell": { "currency": "EUR", "total": 4389.47, "base_fare": 3928, "tax": 461.47 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM4OS40NywiYmFzZV9mYXJlIjozOTI4LCJ0YXgiOjQ2MS40N30sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQzODkuNDcsImJhc2VfZmFyZSI6MzkyOCwidGF4Ijo0NjEuNDcsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM4OS40NywiYmFzZV9mYXJlIjozOTI4LCJ0YXgiOjQ2MS40N319", "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": 4389.47, "base_fare": 3928, "tax": 461.47, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "3928.00", "tax": "461.47", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 4389.47, "base_fare": 3928, "tax": 461.47, "gross": { "base_fare": "3928.00", "tax": "461.47", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzODkuNDciLCJiYXNlX2ZhcmUiOiIzOTI4LjAwIiwidGF4IjoiNDYxLjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzkyOC4wMCIsInRheCI6IjQ2MS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzODkuNDciLCJiYXNlX2ZhcmUiOiIzOTI4LjAwIiwidGF4IjoiNDYxLjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzkyOC4wMCIsInRheCI6IjQ2MS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzODkuNDciLCJiYXNlX2ZhcmUiOiIzOTI4LjAwIiwidGF4IjoiNDYxLjQ3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjQzODkuNDcsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 4389.47, "filter": { "id": "F1MS00008-78", "price": 4389.47, "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": "Full Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T14:50:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2027-01-11T09:45:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201450cdg2026112016451329cdg202611211600cky202611212110592cky202701102035cdg202701110600769cdg202701110800blq2027011109451228", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "61178237584498221A7GNT", "flight_key": "F1MS00008-79", "journey_type": "RoundTrip", "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": "PT23H15M", "transit_time": "PT23H15M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o5", "productId": "p53", "routes": [ { "air_segment_key": null, "origin": "BLQ", "departure_time": "2026-11-20T14:50:00", "origin_terminal": null, "origin_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "destination": "CDG", "arrival_time": "2026-11-20T16:45:00", "destination_terminal": "2F", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2026-11-20", "flight_time": "PT1H55M", "distance": 515, "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": "1329" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1329" }, "booking_class": { "cabin_class": "Full Flex", "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": 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": "CDG", "departure_time": "2026-11-21T16:00:00", "origin_terminal": "2E", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "CKY", "arrival_time": "2026-11-21T21:10:00", "destination_terminal": null, "destination_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "flight_date": "2026-11-21", "flight_time": "PT5H10M", "distance": 2871, "lay_over": "PT23H15M", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "592" }, "booking_class": { "cabin_class": "Full Flex", "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": 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" } } } } ] }, { "group": 2, "flight_key": "F1MS00008-79", "get_branded_fare": "no", "no_of_stops_title": "1 Stop Flight", "no_of_stops": 1, "flight_time": "PT1D5H25M", "transit_time": "PT1D5H25M", "responseId": "6707f489-33f3-46a9-a7aa-38058755d443", "source": "GDS:TravelPort", "offerId": "o6", "productId": "p62", "routes": [ { "air_segment_key": null, "origin": "CKY", "departure_time": "2027-01-10T20:35:00", "origin_terminal": null, "origin_airport": { "name": "Conakry International Airport", "city": "Conakry", "country": "Guinea", "timezone": "Africa\/Conakry" }, "destination": "CDG", "arrival_time": "2027-01-11T06:00:00", "destination_terminal": "2E", "destination_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "flight_date": "2027-01-10", "flight_time": "PT9H25M", "distance": 2871, "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "359", "name": "Airbus A350-900", "picture": "359.png" }, "operating": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "769" }, "booking_class": { "cabin_class": "Full Flex", "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": 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": "CDG", "departure_time": "2027-01-11T12:10:00", "origin_terminal": "2F", "origin_airport": { "name": "Paris Charles de Gaulle Airport", "city": "Paris", "country": "France", "timezone": "Europe\/Paris" }, "destination": "BLQ", "arrival_time": "2027-01-11T13:55:00", "destination_terminal": null, "destination_airport": { "name": "Bologna Guglielmo Marconi Airport", "city": "Bologna", "country": "Italy", "timezone": "Europe\/Rome" }, "flight_date": "2027-01-11", "flight_time": "PT1H45M", "distance": 515, "lay_over": "PT06H10M", "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": "1328" }, "marketing": { "carrier": "AF", "carrier_name": "Air France", "carrier_logo": "AF.png", "flight_number": "1328" }, "booking_class": { "cabin_class": "Full Flex", "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": 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": 4389.47, "gross_total": 4389.47, "base_fare": 3928, "tax": 461.47, "sell": { "currency": "EUR", "total": 4389.47, "base_fare": 3928, "tax": 461.47 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM4OS40NywiYmFzZV9mYXJlIjozOTI4LCJ0YXgiOjQ2MS40N30sInN1cHBsaWVyIjp7ImN1cnJlbmN5IjoiRVVSIiwidG90YWwiOjQzODkuNDcsImJhc2VfZmFyZSI6MzkyOCwidGF4Ijo0NjEuNDcsImNvbWlzc2lvbl90eXBlIjoiZ2VuZXJhbCIsImNvbWlzc2lvbl92YWx1ZSI6MH0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6NDM4OS40NywiYmFzZV9mYXJlIjozOTI4LCJ0YXgiOjQ2MS40N319", "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": 4389.47, "base_fare": 3928, "tax": 461.47, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "3928.00", "tax": "461.47", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "EUR", "total": 4389.47, "base_fare": 3928, "tax": 461.47, "gross": { "base_fare": "3928.00", "tax": "461.47", "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": "eyJmbWciOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzODkuNDciLCJiYXNlX2ZhcmUiOiIzOTI4LjAwIiwidGF4IjoiNDYxLjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzkyOC4wMCIsInRheCI6IjQ2MS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzODkuNDciLCJiYXNlX2ZhcmUiOiIzOTI4LjAwIiwidGF4IjoiNDYxLjQ3IiwiZ3Jvc3MiOnsiYmFzZV9mYXJlIjoiMzkyOC4wMCIsInRheCI6IjQ2MS40NyIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJFVVIiLCJ0b3RhbCI6IjQzODkuNDciLCJiYXNlX2ZhcmUiOiIzOTI4LjAwIiwidGF4IjoiNDYxLjQ3IiwiZGlzY291bnQiOiIwLjAwIiwiYWl0IjoiMC4wMCIsInNlcnZpY2VfY2hhcmdlIjoiMC4wMCIsInBheWFibGUiOjQzODkuNDcsInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIwLjAwIn0sIllSIjp7ImFtb3VudCI6IjAuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMC4wMCJ9LCJzdXBwbGllclRheERhdGEiOltdfX0sImRpc2NvdW50X2NvbWlzc2lvbl90aXRsZSI6bnVsbCwiZGlzY291bnRfY29taXNzaW9uX3JhdGlvIjowLCJkeW5hbWljX21hcmt1cF90eXBlIjpudWxsLCJkeW5hbWljX21hcmt1cF90aXRsZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfcmF0aW8iOm51bGwsImFwcGxpY2FibGVfY29taXNzaW9uIjpudWxsLCJhcHBsaWNhYmxlX2R5bmFtaWNfbWFya3VwIjpudWxsfQ==" } ] }, "fare_rules": { "refundable_data": null, "refundable": "partially-refundable", "change_before_departure": "available" }, "total_price": 4389.47, "filter": { "id": "F1MS00008-79", "price": 4389.47, "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": "Full Flex", "connecting_airport": [ "CDG" ], "total_segment_count": 4, "no_of_stops": 1, "departure_timing_slot": "afternoon", "departure_departure_time": "2026-11-20T14:50:00", "arrival_timing_slot": "afternoon", "arrival_departure_time": "2027-01-11T13:55:00", "refund": "partially-refundable", "baggage_value": null, "baggage_unit": null, "baggage_title": "no-baggage" }, "filter_unique_filter_code": "blq202611201450cdg2026112016451329cdg202611211600cky202611212110592cky202701102035cdg202701110600769cdg202701111210blq2027011113551328", "destination_reach_time": "PT", "destination_reach_timestamp": null, "itinerary_search": { "trips": [ { "origin": "BLQ", "destination": "CKY", "departureDate": "2026-11-20", "departureTime": "" }, { "origin": "CKY", "destination": "BLQ", "departureDate": "2027-01-10", "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": "RoundTrip", "segment": [ { "departure_airport_type": "AIRPORT", "departure_airport": "BLQ", "arrival_airport_type": "AIRPORT", "arrival_airport": "CKY", "departure_date": "2026-11-20", "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": "CKY", "arrival_airport_type": "AIRPORT", "arrival_airport": "BLQ", "departure_date": "2027-01-10", "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": "6", "language": "en", "short_ref": "a44f18614e517f807073ab489639eff956d11b2507f6048b445bc389f43bf938", "version": 1, "team_profile": [ null ], "RefundableOnly": false, "BestFareOnly": false } }