{
    "success": true,
    "data": {
        "route": {
            "origin": {
                "iata": "PER",
                "name": "Perth",
                "country_code": "AU",
                "country_name": "Australia",
                "is_hub": false
            },
            "destination": {
                "iata": "JNB",
                "name": "Johannesburg",
                "country_code": "ZA",
                "country_name": "South Africa",
                "is_hub": false
            },
            "slug": "per-jnb"
        },
        "parameters": {
            "agencies": [
                "Gotogate",
                "Kupi.com",
                "Trip.com"
            ],
            "agencies_count": 3,
            "airlines": [
                "AK",
                "OD",
                "QF",
                "SA",
                "VA"
            ],
            "airlines_count": 5,
            "airports_arrival": 2,
            "airports_arrival_list": [
                "JNB"
            ],
            "airports_departure": 1,
            "airports_departure_list": [
                "PER"
            ],
            "avg_duration_min": 985,
            "avg_price": 762.9,
            "avg_transfers": 0.91,
            "cheapest_agency": "Kupi.com",
            "cheapest_month": 11,
            "cheapest_weekday": 1,
            "departures_per_week": 1,
            "direct_airlines_list": [
                "QF",
                "SA"
            ],
            "direct_flights_count": 5,
            "direct_share": 45.45,
            "distance_km": 8314,
            "eco_score": 4,
            "flight_time_min": 617,
            "flights_found": 11,
            "has_direct": true,
            "max_duration_min": 1280,
            "max_price": 1441,
            "min_duration_min": 670,
            "min_price": 504,
            "min_price_1stop": 1281,
            "min_price_direct": 953,
            "months_with_flights": [
                11,
                12
            ],
            "popularity_score": 0.6,
            "seasonality": 1,
            "time_diff_hours": -6
        },
        "calendar": [
            {
                "date": "2026-11-14",
                "price_usd": 508,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-15",
                "price_usd": 508,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-16",
                "price_usd": 513,
                "transfers": 0,
                "airline": "OD",
                "gate": "Trip.com",
                "duration_min": 1280
            },
            {
                "date": "2026-12-20",
                "price_usd": 1441,
                "transfers": 0,
                "airline": "AK",
                "gate": "Kupi.com",
                "duration_min": 1275
            },
            {
                "date": "2026-12-21",
                "price_usd": 1354,
                "transfers": 0,
                "airline": "VA",
                "gate": "Trip.com",
                "duration_min": 1185
            },
            {
                "date": "2026-12-22",
                "price_usd": 1281,
                "transfers": 0,
                "airline": "VA",
                "gate": "Trip.com",
                "duration_min": 1185
            }
        ],
        "variants": [
            {
                "depart_date": "2026-11-16",
                "price_usd": 513,
                "airline": "OD",
                "flight_number": "194",
                "departure_airport": "PER",
                "arrival_airport": "JNB",
                "departure_time": "18:10:00",
                "arrival_time": "15:30:00",
                "duration_min": 1280,
                "transfers": 2,
                "gate": "Trip.com",
                "ticket_id": "3451a0f0904b914a1af8bf31c3064180"
            },
            {
                "depart_date": "2026-11-16",
                "price_usd": 953,
                "airline": "SA",
                "flight_number": "281",
                "departure_airport": "PER",
                "arrival_airport": "JNB",
                "departure_time": "18:50:00",
                "arrival_time": "06:05:00",
                "duration_min": 675,
                "transfers": 0,
                "gate": "Gotogate",
                "ticket_id": "baea74cca38ba943e577f11474264beb"
            },
            {
                "depart_date": "2026-12-22",
                "price_usd": 1281,
                "airline": "VA",
                "flight_number": "8406",
                "departure_airport": "PER",
                "arrival_airport": "JNB",
                "departure_time": "11:05:00",
                "arrival_time": "06:50:00",
                "duration_min": 1185,
                "transfers": 1,
                "gate": "Trip.com",
                "ticket_id": "1b51a96ef87af4564164190180f5e79c"
            },
            {
                "depart_date": "2026-12-21",
                "price_usd": 1354,
                "airline": "VA",
                "flight_number": "8406",
                "departure_airport": "PER",
                "arrival_airport": "JNB",
                "departure_time": "11:05:00",
                "arrival_time": "06:50:00",
                "duration_min": 1185,
                "transfers": 1,
                "gate": "Trip.com",
                "ticket_id": "f01ed21c8212b9f0439e8f4257c841d1"
            },
            {
                "depart_date": "2026-12-20",
                "price_usd": 1441,
                "airline": "AK",
                "flight_number": "607",
                "departure_airport": "PER",
                "arrival_airport": "JNB",
                "departure_time": "15:50:00",
                "arrival_time": "13:05:00",
                "duration_min": 1275,
                "transfers": 2,
                "gate": "Kupi.com",
                "ticket_id": "a6a35bd434f6928bfd17f190eb8d8300"
            },
            {
                "depart_date": "2026-12-22",
                "price_usd": 1732,
                "airline": "QF",
                "flight_number": "65",
                "departure_airport": "PER",
                "arrival_airport": "JNB",
                "departure_time": "08:15:00",
                "arrival_time": "19:25:00",
                "duration_min": 670,
                "transfers": 0,
                "gate": "Trip.com",
                "ticket_id": "0f0e88609958e3e37310d3f87dd35418"
            },
            {
                "depart_date": "2026-12-20",
                "price_usd": 1892,
                "airline": "QF",
                "flight_number": "65",
                "departure_airport": "PER",
                "arrival_airport": "JNB",
                "departure_time": "08:15:00",
                "arrival_time": "19:25:00",
                "duration_min": 670,
                "transfers": 0,
                "gate": "Trip.com",
                "ticket_id": "a4ac75174931d4c512840c6db7b6da5a"
            },
            {
                "depart_date": "2026-12-21",
                "price_usd": 2506,
                "airline": "SA",
                "flight_number": "281",
                "departure_airport": "PER",
                "arrival_airport": "JNB",
                "departure_time": "18:50:00",
                "arrival_time": "06:05:00",
                "duration_min": 675,
                "transfers": 0,
                "gate": "Trip.com",
                "ticket_id": "3787737ad8bd3d021306d40ae55f04f3"
            }
        ],
        "airlines": [
            {
                "iata": "AK",
                "name": "AirAsia",
                "logo_url": "https://img.wway.io/pics/root/AK@png?exar=1&rs=fit:80:80",
                "is_lowcost": true,
                "routes_count": 164,
                "min_price_usd": 504
            },
            {
                "iata": "OD",
                "name": "Batik Air Malaysia",
                "logo_url": "https://img.wway.io/pics/root/OD@png?exar=1&rs=fit:80:80",
                "is_lowcost": false,
                "routes_count": 0,
                "min_price_usd": 513
            },
            {
                "iata": "SA",
                "name": "South African Airways",
                "logo_url": "https://img.wway.io/pics/root/SA@png?exar=1&rs=fit:80:80",
                "is_lowcost": false,
                "routes_count": 200,
                "min_price_usd": 953
            },
            {
                "iata": "VA",
                "name": "Virgin Australia",
                "logo_url": "https://img.wway.io/pics/root/VA@png?exar=1&rs=fit:80:80",
                "is_lowcost": false,
                "routes_count": 56,
                "min_price_usd": 1281
            },
            {
                "iata": "QF",
                "name": "Qantas",
                "logo_url": "https://img.wway.io/pics/root/QF@png?exar=1&rs=fit:80:80",
                "is_lowcost": false,
                "routes_count": 363,
                "min_price_usd": 1732
            }
        ],
        "agencies": [
            {
                "name": "Kupi.com",
                "min_price_usd": 504,
                "tickets_count": 3
            },
            {
                "name": "Trip.com",
                "min_price_usd": 513,
                "tickets_count": 7
            },
            {
                "name": "Gotogate",
                "min_price_usd": 953,
                "tickets_count": 1
            }
        ],
        "airports": {
            "departure": [
                {
                    "iata": "PER",
                    "name": "Perth Airport",
                    "iata_type": "airport",
                    "time_zone": "Australia/Perth"
                }
            ],
            "arrival": [
                {
                    "iata": "JNB",
                    "name": "O.R. Tambo International Airport",
                    "iata_type": "airport",
                    "time_zone": "Africa/Johannesburg"
                }
            ]
        },
        "html_url": "https://cityvator.com/en/per-jnb/",
        "api_urls": {
            "self": "https://cityvator.com/api/routes/per-jnb",
            "qa": "https://cityvator.com/api/qa/route/per-jnb",
            "compare": "https://cityvator.com/api/compare/per-jnb-vs-"
        },
        "updated_at": "2026-11-06 07:53:25"
    },
    "meta": {
        "lang": "en",
        "currency": "USD",
        "requested_at": "2026-11-13T03:34:31+03:00",
        "powered_by": "Cityvator",
        "source": "https://cityvator.com",
        "license": "CC-BY-4.0",
        "attribution": "Data source: Cityvator (https://cityvator.com)"
    }
}