{ "status": "success", "price_change": "up", "tracking_id": "691176873828020398WHLVZ", "booking_tracking_id": "69138176873831020398VXSHH", "flight_key": null, "search_price": { "currency": "GBP", "amount": 614.39 }, "validation_price": { "currency": "GBP", "amount": 665.39 }, "data": { "tracking_id": "69138176873831020398VXSHH", "flight_key": "F69TT00035-0", "journey_type": "RoundTrip", "result_type": "general", "get_branded_fare": "no", "hold_possible": "yes", "supplier_title": "Travelport UK pol", "color_code": "#ffffff", "supplier_code": "travelport", "supplier_uid": "F69TT00035", "supplier_partner_code": "travelport-69-00035", "info_message": null, "tp_trace_id": "691176873828020398WHLVZ", "Session_Key": "206400f2-e45c-4c9c-8143-83cf534b2273", "FlightTrackingID": 0, "search_parameter": { "journey_type": "RoundTrip", "segment": [ { "departure_airport_type": "AIRPORT", "departure_airport": "LHR", "arrival_airport_type": "CITY", "arrival_airport": "JNB", "departure_date": "2026-03-02", "departure_time": "anytime", "departure_time_within": "anytime", "booking_class": "Economy", "stop": "any", "alliance": { "include": [], "exclude": [] }, "country": { "include": [], "exclude": [] }, "airlines": { "include": [], "exclude": [] } }, { "departure_airport_type": "CITY", "departure_airport": "JNB", "departure_date": "2026-03-09", "departure_time": "anytime", "departure_time_within": "anytime", "booking_class": "Economy", "stop": "any", "arrival_airport_type": "AIRPORT", "arrival_airport": "LHR", "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": [], "fare_option": [], "content_type": "all_content", "ptc_option": [], "agency_ethnic_list": [], "preferred_carrier": [ "VS" ], "non_stop_flight": "any", "baggage_option": "any", "booking_class": "Economy", "supplier_uid": "all", "partner_id": "69", "language": "en", "short_ref": "016255e8a6d9d2f4762c28d2a6ca5d9bf5d0087a1af58b15b0d175e592dd67d7", "version": 1, "team_profile": [ null ] }, "pax_options": { "doc_required": "yes", "pax_dob_required": "yes", "seat_selection": "disable", "meal_selection": "disable", "baggage_selection": "disable", "passport_scan_selection": "active", "pax_search_selection": "active", "frequent_flyer_selection": "active", "wheelchair_selection": "active", "pax_email_contact_selection": "active", "pax_save_option": "active", "terms_selection": "check", "cancellation_selection": "check", "flight_type": "international" }, "flight_group": [ { "group": 1, "flight_key": "F69TT00035-0", "no_of_stops_title": "Direct Flight", "no_of_stops": 0, "flight_time": "PT10H55M", "transit_time": null, "routes": [ { "air_segment_key": "c8BkDvYDuDKAFwtyILAAAA==", "origin": "LHR", "departure_time": "2026-03-02T19:40:00.000+00:00", "origin_terminal": "3", "origin_airport": { "name": "London Heathrow Airport", "city": "London", "country": "United Kingdom", "timezone": "Europe\/London" }, "destination": "JNB", "arrival_time": "2026-03-03T08:35:00.000+02:00", "destination_terminal": "A", "destination_airport": { "name": "O.R. Tambo International Airport", "city": "Johannesburg", "country": "South Africa", "timezone": "Africa\/Johannesburg" }, "flight_date": "2026-03-02", "flight_time": "PT10H55M", "distance": "5631", "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "789", "name": "789", "picture": "789.png" }, "operating": { "carrier": "VS", "carrier_name": "Virgin Atlantic Airways", "carrier_logo": "VS.png", "flight_number": "449" }, "marketing": { "carrier": "VS", "carrier_name": "Virgin Atlantic Airways", "carrier_logo": "VS.png", "flight_number": "449" }, "booking_class": { "cabin_class": "Economy", "cabin_code": "O", "booking_code": "O", "meal_code": "Dinner", "seat_available": null, "FareInfoRef": null, "FareRuleKey": null }, "baggages": { "checked": { "ADT": { "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": "1", "weight": null, "unit": "pieces", "title": "1 pieces" } }, "carry_on": { "ADT": { "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": "pieces", "title": "1 pieces" } } } } ] }, { "group": 1, "flight_key": "F69TT00035-0", "no_of_stops_title": "Direct Flight", "no_of_stops": 0, "flight_time": "PT11H20M", "transit_time": null, "routes": [ { "air_segment_key": "c8BkDvYDuDKAHwtyILAAAA==", "origin": "JNB", "departure_time": "2026-03-09T22:00:00.000+02:00", "origin_terminal": "A", "origin_airport": { "name": "O.R. Tambo International Airport", "city": "Johannesburg", "country": "South Africa", "timezone": "Africa\/Johannesburg" }, "destination": "LHR", "arrival_time": "2026-03-10T07:20:00.000+00:00", "destination_terminal": "3", "destination_airport": { "name": "London Heathrow Airport", "city": "London", "country": "United Kingdom", "timezone": "Europe\/London" }, "flight_date": "2026-03-09", "flight_time": "PT11H20M", "distance": "5631", "lay_over": "not-applicable", "lay_over_date": "not-applicable", "aircraft": { "code": "789", "name": "789", "picture": "789.png" }, "operating": { "carrier": "VS", "carrier_name": "Virgin Atlantic Airways", "carrier_logo": "VS.png", "flight_number": "450" }, "marketing": { "carrier": "VS", "carrier_name": "Virgin Atlantic Airways", "carrier_logo": "VS.png", "flight_number": "450" }, "booking_class": { "cabin_class": "Economy", "cabin_code": "O", "booking_code": "O", "meal_code": "Dinner", "seat_available": null, "FareInfoRef": null, "FareRuleKey": null }, "baggages": { "checked": { "ADT": { "passenger_type": "ADT", "baggage_type": "checked", "pieceCount": "1", "weight": null, "unit": "pieces", "title": "1 pieces" } }, "carry_on": { "ADT": { "passenger_type": "ADT", "baggage_type": "carry_on", "pieceCount": 1, "weight": null, "unit": "pieces", "title": "1 pieces" } } } } ] } ], "price": { "currency": "GBP", "total": 665.39, "gross_total": 665.39, "base_fare": 231, "tax": 434.39, "sell": { "currency": "GBP", "total": 665.39, "base_fare": 231, "tax": 434.39 }, "price_hash": "eyJmbWciOnsiY3VycmVuY3kiOiJHQlAiLCJ0b3RhbCI6NjY1LjM5LCJiYXNlX2ZhcmUiOjIzMSwidGF4Ijo0MzQuMzl9LCJzdXBwbGllciI6eyJjdXJyZW5jeSI6IkdCUCIsInRvdGFsIjo2NjUuMzksImJhc2VfZmFyZSI6MjMxLCJ0YXgiOjQzNC4zOSwiY29taXNzaW9uX3R5cGUiOiJnZW5lcmFsIiwiY29taXNzaW9uX3ZhbHVlIjowfSwiZ3Jvc3NfZmFyZSI6eyJjdXJyZW5jeSI6IkdCUCIsInRvdGFsIjo2NjUuMzksImJhc2VfZmFyZSI6MjMxLCJ0YXgiOjQzNC4zOX19", "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": "GBP", "total": 665.39, "base_fare": 231, "tax": 434.39, "ticket_issue_charge": 0, "total_ticket_issue_charge": 0, "gross": { "base_fare": "231.00", "tax": "434.39", "discount": 0, "ait": "0.00", "service_charge": 0 }, "partner": { "currency": "GBP", "total": 665.39, "base_fare": 231, "tax": 434.39, "gross": { "base_fare": "231.00", "tax": "434.39", "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": "250.00" }, "YR": { "title": "YR \u2013 Another Carrier-Imposed Surcharge", "amount": "14.00" }, "Other": { "title": "Others taxes", "amount": "170.39" } } }, "priceHash": "eyJmbWciOnsiY3VycmVuY3kiOiJHQlAiLCJ0b3RhbCI6IjY2NS4zOSIsImJhc2VfZmFyZSI6IjIzMS4wMCIsInRheCI6IjQzNC4zOSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjIzMS4wMCIsInRheCI6IjQzNC4zOSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAifSwiY29uZmlnIjp7Im1hcmt1cF90eXBlIjpudWxsLCJtYXJrdXBfdGl0bGUiOm51bGwsInJldmVudWUiOiIwLjAwIiwidGlja2V0X2lzc3VlX2NoYXJnZSI6IjAuMDAiLCJ0b3RhbF90aWNrZXRfaXNzdWVfY2hhcmdlIjoiMC4wMCIsImN1cnJlbmN5RXhjaGFuZ2VSYXRlIjoiMS4wMCIsIkZNR19PdmVyd3JpdGVSdWxlcyI6W119fSwic3VwcGxpZXIiOnsiY3VycmVuY3kiOiJHQlAiLCJ0b3RhbCI6IjY2NS4zOSIsImJhc2VfZmFyZSI6IjIzMS4wMCIsInRheCI6IjQzNC4zOSIsImdyb3NzIjp7ImJhc2VfZmFyZSI6IjIzMS4wMCIsInRheCI6IjQzNC4zOSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6MCwicGVyX3NlZ21lbnRfZGlzY291bnQiOjAsInNlZ21lbnRfZGlzY291bnQiOiIwLjAwIiwic3VwcGxpZXJfc2VnbWVudF9mZWVzQ2FsY3VsYXRlIjpudWxsLCJzZWdtZW50X2Rpc2NvdW50X2FjY291bnRQdXJwb3NlIjpudWxsfX0sImdyb3NzX2ZhcmUiOnsiY3VycmVuY3kiOiJHQlAiLCJ0b3RhbCI6IjY2NS4zOSIsImJhc2VfZmFyZSI6IjIzMS4wMCIsInRheCI6IjQzNC4zOSIsImRpc2NvdW50IjoiMC4wMCIsImFpdCI6IjAuMDAiLCJzZXJ2aWNlX2NoYXJnZSI6IjAuMDAiLCJwYXlhYmxlIjo2NjUuMzksInRheEJyZWFrZG93biI6eyJCRCI6eyJhbW91bnQiOiIwLjAwIn0sIlVUIjp7ImFtb3VudCI6IjAuMDAifSwiRTUiOnsiYW1vdW50IjoiMC4wMCJ9LCJZUSI6eyJhbW91bnQiOiIyNTAuMDAifSwiWVIiOnsiYW1vdW50IjoiMTQuMDAifSwiT3RoZXIiOnsiYW1vdW50IjoiMTcwLjM5In0sInN1cHBsaWVyVGF4RGF0YSI6W3siY29kZSI6IkdCIiwiY3VycmVuY3kiOiJHQlAiLCJhbW91bnQiOiI5NC4wMCIsInRheEluZm8iOiJjOEJrRHZZRHVES0FOd3R5SUxBQUFBPT0ifSx7ImNvZGUiOiJVQiIsImN1cnJlbmN5IjoiR0JQIiwiYW1vdW50IjoiNTAuNzkiLCJ0YXhJbmZvIjoiYzhCa0R2WUR1REtBT3d0eUlMQUFBQT09In0seyJjb2RlIjoiRVYiLCJjdXJyZW5jeSI6IkdCUCIsImFtb3VudCI6IjEuNTAiLCJ0YXhJbmZvIjoiYzhCa0R2WUR1REtBUHd0eUlMQUFBQT09In0seyJjb2RlIjoiVU0iLCJjdXJyZW5jeSI6IkdCUCIsImFtb3VudCI6IjEuMjAiLCJ0YXhJbmZvIjoiYzhCa0R2WUR1REtBUXd0eUlMQUFBQT09In0seyJjb2RlIjoiV0MiLCJjdXJyZW5jeSI6IkdCUCIsImFtb3VudCI6IjguNzAiLCJ0YXhJbmZvIjoiYzhCa0R2WUR1REtBUnd0eUlMQUFBQT09In0seyJjb2RlIjoiWkEiLCJjdXJyZW5jeSI6IkdCUCIsImFtb3VudCI6IjE0LjIwIiwidGF4SW5mbyI6ImM4QmtEdllEdURLQVN3dHlJTEFBQUE9PSJ9LHsiY29kZSI6IllRIiwiY3VycmVuY3kiOiJHQlAiLCJhbW91bnQiOiIyNTAuMDAiLCJ0YXhJbmZvIjoiYzhCa0R2WUR1REtBVHd0eUlMQUFBQT09In0seyJjb2RlIjoiWVIiLCJjdXJyZW5jeSI6IkdCUCIsImFtb3VudCI6IjE0LjAwIiwidGF4SW5mbyI6ImM4QmtEdllEdURLQVV3dHlJTEFBQUE9PSJ9XX19LCJkaXNjb3VudF9jb21pc3Npb25fdGl0bGUiOm51bGwsImRpc2NvdW50X2NvbWlzc2lvbl9yYXRpbyI6MCwiZHluYW1pY19tYXJrdXBfdHlwZSI6bnVsbCwiZHluYW1pY19tYXJrdXBfdGl0bGUiOm51bGwsImR5bmFtaWNfbWFya3VwX3JhdGlvIjpudWxsLCJhcHBsaWNhYmxlX2NvbWlzc2lvbiI6bnVsbCwiYXBwbGljYWJsZV9keW5hbWljX21hcmt1cCI6bnVsbH0=" } ] }, "penalty_info": { "partial_payment_available": "no", "reason": "partial payment offer expired", "data": [ { "pax_type": "ADT", "pax_count": 1, "min_cancel_charge": 280, "data": [ { "type": "change", "forSegment": null, "applied": "prior_to_departure", "amount": 150, "currency": "GBP", "fmg": { "amount": 150, "currency": "USD", "penalty_markup": 0, "penalty_exchange_rate": 150 }, "supplier": { "amount": "150.00", "currency": "GBP" } }, { "type": "cancel", "forSegment": null, "applied": "prior_to_departure", "amount": 280, "currency": "GBP", "fmg": { "amount": 280, "currency": "USD", "penalty_markup": 0, "penalty_exchange_rate": 280 }, "supplier": { "amount": "280.00", "currency": "GBP" } } ] } ] }, "get_pax_ptc_data": null, "fare_rules": { "refundable_data": null, "refundable": "non-refundable", "change_before_departure": "not-available" }, "calendar_key": "2026-03-02-2026-03-10", "calendar_flight_date": "2026-03-02", "calendar_arrival_date": "2026-03-10", "calendar_carrier": "VS", "calendar_total_currency": "GBP", "calendar_total_price": 665.39, "calendar_total_sell": 665.39, "calendar_supplier_currency": null, "calendar_supplier_amount": null, "calendar_fmg_amount": null, "total_price": 665.39, "filter": { "id": "F69TT00035-0", "price": 665.39, "gross_total": 665.39, "journey_duration": "PT22H15M", "journey_duration_seconds": 80100, "layover_duration": "PT0H0M", "layover_duration_seconds": 0, "carrier_operating": "VS", "carrier_marketing": "VS", "aircraft": "789", "aircraft_name": "789", "cabin_class": "Economy", "connecting_airport": [], "total_segment_count": 2, "no_of_stops": [ { "group": 1, "no_of_stops": 0 }, { "group": 2, "no_of_stops": 0 } ], "departure_timing_slot": "evening", "departure_departure_time": "2026-03-02T19:40:00.000+00:00", "arrival_timing_slot": "morning", "arrival_departure_time": "2026-03-10T07:20:00.000+00:00", "refund": "non-refundable", "baggage_value": "pieces", "baggage_unit": "1", "baggage_title": "1 pieces" }, "filter_unique_filter_code": "lhr202603021940jnb202603030835449jnb202603092200lhr202603100720450", "destination_reach_time": "PT", "destination_reach_timestamp": null } }