{
    "success": true,
    "data": {
        "route": {
            "origin": {
                "iata": "ADD",
                "name": "Addis Ababa",
                "country_code": "ET",
                "country_name": "Ethiopia",
                "is_hub": false
            },
            "destination": {
                "iata": "JNB",
                "name": "Johannesburg",
                "country_code": "ZA",
                "country_name": "South Africa",
                "is_hub": false
            },
            "slug": "add-jnb"
        },
        "parameters": {
            "agencies": [
                "City.Travel",
                "Mytrip.com",
                "OneTwoTrip",
                "Trip.com",
                "Vayama"
            ],
            "agencies_count": 5,
            "airlines": [
                "ET",
                "KQ",
                "QR"
            ],
            "airlines_count": 3,
            "airports_arrival": 2,
            "airports_arrival_list": [
                "JNB"
            ],
            "airports_departure": 1,
            "airports_departure_list": [
                "ADD"
            ],
            "avg_duration_min": 427,
            "avg_price": 414.6364,
            "avg_transfers": 0.5,
            "cheapest_agency": "Trip.com",
            "cheapest_month": 11,
            "cheapest_weekday": 3,
            "departures_per_week": 1,
            "direct_airlines_list": [
                "ET"
            ],
            "direct_flights_count": 5,
            "direct_share": 50,
            "distance_km": 4080,
            "eco_score": 7,
            "flight_time_min": 318,
            "flights_found": 10,
            "has_direct": true,
            "max_duration_min": 735,
            "max_price": 474,
            "min_duration_min": 320,
            "min_price": 397,
            "min_price_1stop": 397,
            "min_price_direct": 473,
            "months_with_flights": [
                11,
                12
            ],
            "popularity_score": 0.5,
            "seasonality": 1,
            "time_diff_hours": -1
        },
        "calendar": [
            {
                "date": "2026-11-13",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-14",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-15",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-16",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-17",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-18",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-19",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-20",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-21",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-22",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-23",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-24",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-25",
                "price_usd": 410,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-26",
                "price_usd": 397,
                "transfers": 0,
                "airline": "QR",
                "gate": "Trip.com",
                "duration_min": 735
            },
            {
                "date": "2026-11-27",
                "price_usd": 416,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-28",
                "price_usd": 416,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-29",
                "price_usd": 416,
                "transfers": 0,
                "airline": null,
                "gate": null,
                "duration_min": 0
            },
            {
                "date": "2026-11-30",
                "price_usd": 435,
                "transfers": 0,
                "airline": "KQ",
                "gate": "Trip.com",
                "duration_min": 385
            },
            {
                "date": "2026-12-24",
                "price_usd": 405,
                "transfers": 0,
                "airline": "QR",
                "gate": "Trip.com",
                "duration_min": 730
            },
            {
                "date": "2026-12-25",
                "price_usd": 474,
                "transfers": 0,
                "airline": "ET",
                "gate": "City.Travel",
                "duration_min": 380
            }
        ],
        "variants": [
            {
                "depart_date": "2026-11-26",
                "price_usd": 397,
                "airline": "QR",
                "flight_number": "1428",
                "departure_airport": "ADD",
                "arrival_airport": "JNB",
                "departure_time": "01:45:00",
                "arrival_time": "14:00:00",
                "duration_min": 735,
                "transfers": 1,
                "gate": "Trip.com",
                "ticket_id": "27c77b6e35b2e1766b26da718bfe6c8d"
            },
            {
                "depart_date": "2026-12-24",
                "price_usd": 405,
                "airline": "QR",
                "flight_number": "1428",
                "departure_airport": "ADD",
                "arrival_airport": "JNB",
                "departure_time": "01:45:00",
                "arrival_time": "13:55:00",
                "duration_min": 730,
                "transfers": 1,
                "gate": "Trip.com",
                "ticket_id": "e48450a94a6b212ee77ca263a9db88ce"
            },
            {
                "depart_date": "2026-11-30",
                "price_usd": 435,
                "airline": "KQ",
                "flight_number": "401",
                "departure_airport": "ADD",
                "arrival_airport": "JNB",
                "departure_time": "10:20:00",
                "arrival_time": "16:45:00",
                "duration_min": 385,
                "transfers": 1,
                "gate": "Trip.com",
                "ticket_id": "93c3f69f93d6b806a0f456cdfa69ff64"
            },
            {
                "depart_date": "2026-12-25",
                "price_usd": 474,
                "airline": "ET",
                "flight_number": "336",
                "departure_airport": "ADD",
                "arrival_airport": "JNB",
                "departure_time": "11:10:00",
                "arrival_time": "17:30:00",
                "duration_min": 380,
                "transfers": 1,
                "gate": "City.Travel",
                "ticket_id": "a2b2d049a0e24496fa8c3c4746893509"
            },
            {
                "depart_date": "2026-11-30",
                "price_usd": 544,
                "airline": "ET",
                "flight_number": "849",
                "departure_airport": "ADD",
                "arrival_airport": "JNB",
                "departure_time": "15:35:00",
                "arrival_time": "21:10:00",
                "duration_min": 335,
                "transfers": 0,
                "gate": "City.Travel",
                "ticket_id": "1767a25d01b6518ee56199daa76c3948"
            },
            {
                "depart_date": "2026-11-26",
                "price_usd": 545,
                "airline": "ET",
                "flight_number": "849",
                "departure_airport": "ADD",
                "arrival_airport": "JNB",
                "departure_time": "15:35:00",
                "arrival_time": "21:10:00",
                "duration_min": 335,
                "transfers": 0,
                "gate": "City.Travel",
                "ticket_id": "adc23eaf5b6385bb2b30550942c2b3ad"
            },
            {
                "depart_date": "2026-12-24",
                "price_usd": 549,
                "airline": "ET",
                "flight_number": "849",
                "departure_airport": "ADD",
                "arrival_airport": "JNB",
                "departure_time": "15:35:00",
                "arrival_time": "21:10:00",
                "duration_min": 335,
                "transfers": 0,
                "gate": "City.Travel",
                "ticket_id": "cc02e89f732e7f0163b861023de85c2e"
            },
            {
                "depart_date": "2026-12-25",
                "price_usd": 557,
                "airline": "ET",
                "flight_number": "7201",
                "departure_airport": "ADD",
                "arrival_airport": "JNB",
                "departure_time": "09:10:00",
                "arrival_time": "14:30:00",
                "duration_min": 320,
                "transfers": 0,
                "gate": "OneTwoTrip",
                "ticket_id": "01f188077a12fb5156e8b4692c005ac5"
            }
        ],
        "airlines": [
            {
                "iata": "QR",
                "name": "Qatar Airways",
                "logo_url": "https://img.wway.io/pics/root/QR@png?exar=1&rs=fit:80:80",
                "is_lowcost": false,
                "routes_count": 230,
                "min_price_usd": 397
            },
            {
                "iata": "ET",
                "name": "Ethiopian Airlines",
                "logo_url": "https://img.wway.io/pics/root/ET@png?exar=1&rs=fit:80:80",
                "is_lowcost": false,
                "routes_count": 223,
                "min_price_usd": 423
            },
            {
                "iata": "KQ",
                "name": "Kenya Airways",
                "logo_url": "https://img.wway.io/pics/root/KQ@png?exar=1&rs=fit:80:80",
                "is_lowcost": false,
                "routes_count": 155,
                "min_price_usd": 435
            }
        ],
        "agencies": [
            {
                "name": "Trip.com",
                "min_price_usd": 397,
                "tickets_count": 3
            },
            {
                "name": "Mytrip.com",
                "min_price_usd": 423,
                "tickets_count": 1
            },
            {
                "name": "Vayama",
                "min_price_usd": 473,
                "tickets_count": 1
            },
            {
                "name": "City.Travel",
                "min_price_usd": 474,
                "tickets_count": 4
            },
            {
                "name": "OneTwoTrip",
                "min_price_usd": 557,
                "tickets_count": 1
            }
        ],
        "airports": {
            "departure": [
                {
                    "iata": "ADD",
                    "name": "Addis Ababa Bole International Airport",
                    "iata_type": "airport",
                    "time_zone": "Africa/Addis_Ababa"
                }
            ],
            "arrival": [
                {
                    "iata": "JNB",
                    "name": "O.R. Tambo International Airport",
                    "iata_type": "airport",
                    "time_zone": "Africa/Johannesburg"
                }
            ]
        },
        "html_url": "https://cityvator.com/en/add-jnb/",
        "api_urls": {
            "self": "https://cityvator.com/api/routes/add-jnb",
            "qa": "https://cityvator.com/api/qa/route/add-jnb",
            "compare": "https://cityvator.com/api/compare/add-jnb-vs-"
        },
        "updated_at": "2026-10-21 17:33:57"
    },
    "meta": {
        "lang": "en",
        "currency": "USD",
        "requested_at": "2026-11-13T08:37:17+03:00",
        "powered_by": "Cityvator",
        "source": "https://cityvator.com",
        "license": "CC-BY-4.0",
        "attribution": "Data source: Cityvator (https://cityvator.com)"
    }
}