Expected BEGIN_ARRAY but was BEGIN_OBJECT at line 1 column 5921 path $.data[5].courier.data

I have this model object Courier :

public class Courier {
    @SerializedName("data")
    private List<User> data = null;

    public Courier() {
    }

    public Courier(List<User> data) {
        this.data = data;
    }

    public List<User> getData() {
        return data;
    }

    public void setData(List<User> data) {
        this.data = data;
    }
}

I get this response from server:

{
    "data": [
        {
            "id": 446,
            "courier": {
                "data": []
            },
            "title": "гром",
            "description": "Логойский тракт 24 в России в начале следующей",
            "departure": "ChIJPQKUckNv2UYRLr1NasgXZ08",
            "arrival": "EkHQodC10YDQtdCx0YDRj9C90YvQuSDQv9C10YDQtdGD0LvQvtC6LCDQnNC-0YHQutCy0LAsINCg0L7RgdGB0LjRjw"
        },
        {
            "id": 438,
            "courier": {
                "data": []
            },
            "title": "тест",
            "description": "гппг лмш ш ш ш ш г У меня на сковородке стоит ли брать сва в кино мы все равно обсуждаем",
            "departure": "ChIJH10nmDnP20YR-n7Kq6Whd5w",
            "arrival": "Ej_QnNC-0YHQutCy0L7RgNC10YbQutCw0Y8g0YPQu9C40YbQsCwg0JzQvtGB0LrQstCwLCDQoNC-0YHRgdC40Y8"
        },
        {
            "id": 439,
            "courier": {
                "data": []
            },
            "title": "лаьаьаат",
            "description": "лала слат алс ал ала ал кща да аьад",
            "departure": "ChIJH7D4cTnP20YRKlzSCnP6Mak",
            "arrival": "Ej_QnNC-0YHQutCy0L7RgNC10YbQutCw0Y8g0YPQu9C40YbQsCwg0JzQvtGB0LrQstCwLCDQoNC-0YHRgdC40Y8"
        },
        {
            "id": 442,
            "courier": {
                "data": {
                    "id": 122,
                    "email": null,
                    "phone": "73339999999",
                    "photo": null,
                    "rating": 0
                }
            },
            "title": "картошечка",
            "description": "Крупная сортированная",
            "departure": "ChIJnZRv1jnP20YRWiezW55d1tA",
            "arrival": "ChIJpfH6UJtp1EYRlhM20g-jzF4"
        }
    ]
}

If object courier not have data, i get array "data": [], if object courier has data, i get object :

"courier": {
                "data": {
                    "id": 122,
                    "email": null,
                    "phone": "73339999999",
                    "photo": null,
                    "rating": 0
                }
            }

And then I get error… Please give me advice how handle this case in android application…