Ошибка: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was BEGIN_OBJECT at line 1 column 14 path

учусь пользоваться retrofit, тренируюсь на API vk.com, получаю вот такую ошибку:

com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was BEGIN_OBJECT at line 1 column 14 path $.response
 at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$ ...blablablabla

Не могу найти где проблема, кто-нибудь сможет подсказать где ошибка и как пофисксить? Буду благодарен.

Code in VkPagingSource:

class VkPagingSource(
    private val vkApi: VkApi,
    private val userId: String
) : PagingSource<Int, VkPerson>() {

    override suspend fun load(params: LoadParams<Int>): LoadResult<Int, VkPerson> {
        val position = params.key ?: VK_STARTING_PAGE_INDEX

        return try {
            val vkResponse = vkApi.searchFriends(userId, "500", "city,domain,photo_100", VkApi.API_VERSION, VkApi.ACCESS_TOKEN)
            val people = vkResponse.response

            LoadResult.Page(
                data = people,
                prevKey = if (position == VK_STARTING_PAGE_INDEX) null else position - 1,
                nextKey = if (people.isEmpty()) null else position + 1
            )
        } catch (exception: IOException) {
            LoadResult.Error(exception)
        } catch (exception: HttpException) {
            LoadResult.Error(exception)
        }
    }
}

in ViewModel:

@HiltViewModel
class PeopleViewModel @Inject constructor(
    private val repository: VkRepository
) : ViewModel() {
    private val currentUserId = MutableLiveData(DEFAULT_USER_ID)

    val people = currentUserId.switchMap { userIdInt ->
        repository.getUserFriendsResults(userIdInt).cachedIn(viewModelScope)
    }

    fun getUserFriends(userId: Int) {
        currentUserId.value = userId
    }

    companion object {
        private const val DEFAULT_USER_ID = 100082006
    }
}

in Repo:

@Singleton
class VkRepository @Inject constructor(private val vkApi: VkApi) {
    fun getUserFriendsResults(userId: Int) =
        Pager(
            config = PagingConfig(
                pageSize = 20,
                maxSize = 100,
                enablePlaceholders = false
            ),
            pagingSourceFactory = { VkPagingSource(vkApi, userId) }
        ).liveData
}

VkResponse object:

data class VkResponse(
    val results: List<VkPerson>
)

VkApi:

interface VkApi {

    companion object {
        const val BASE_URL = "https://api.vk.com/"
        const val ACCESS_TOKEN = space.rodionov.vkontaktefucker.BuildConfig.VK_ACCESS_TOKEN
        const val API_VERSION = "5.21"
    }

    @GET("method/friends.get")
    suspend fun searchFriends(
        @Query("user_id") id: String,
        @Query("count") count: String,
        @Query("fields") fields: String,
        @Query("v") apiVersion: String,
        @Query("access_token") accessToken: String
    ) : VkResponse
}

VkPerson:

@Parcelize
data class VkPerson(

    val id: Int,
    @SerializedName("first_name")
    val firstName: String,
    @SerializedName("last_name")
    val lastName: String,
    @SerializedName("photo_100")
    val photo: String,
    val domain: String,
    val city: VkCity

) : Parcelable {

    @Parcelize
    data class VkCity(
        @SerializedName("title")
        val cityName: String
    ) : Parcelable
}

Ответы (0 шт):