Для начала я бы посоветовал изучить дооснащение , поскольку лично мне легче работать (хотя это может быть излишне, если вы делаете только один или два вызова REST)
Я бы, вероятно, также сделал
client.newCall(request).enqueue(object: Callback {
override fun onResult(call: Call, response: Response) {
if (response.isSuccessful()) {
return@run response.body.toString()
}
}
)}
асинхронным.
Аутентификация - это боль, которую нужно добавить в OkHttp imo, и на нее лучше всего ответить здесь ,и намного проще в Retrofit.
Наконец, Throws
помечает функцию как имеющую потенциал для выброса Exception
при вызове из кода Java (поскольку Kotlin и Java могут сосуществовать)