Google Calendar API v3 не сохраняет местоположение события и участников

# #kotlin #google-cloud-platform #google-api #google-calendar-api #ktor

Вопрос:

Я тестирую Google Calendar API v3, и единственными отсутствующими полями являются location и attendees получение событий календаря. Я использую интерфейс REST (google oauth2, и пользователь, с которым я вошел в систему, является владельцем календаря), и я могу выполнять все необходимые операции CRUD, но по какой-то причине location attendees они игнорируются. Если я использую ту же полезную нагрузку (скопированную с вывода консоли) с помощью Google API explorer или Postman, это работает… что я упускаю?

Пример загрузки:

 POST https://www.googleapis.com/calendar/v3/calendars/[YOUR_CALENDAR_ID]/events?key=[YOUR_API_KEY] HTTP/1.1

Authorization: Bearer [YOUR_ACCESS_TOKEN]
Accept: application/json
Content-Type: application/json

{
  "end": {
    "timeZone": "Europe/Lisbon",
    "dateTime": "2021-05-13T10:00:00 01:00"
  },
  "start": {
    "timeZone": "Europe/Lisbon",
    "dateTime": "2021-05-13T08:00:00 01:00"
  },
  "attendees": [
    {
      "email": "batman@mail.com"
    }
  ],
  "location": "Batcave"
}
 

Я использую Ktor, и это код:

 client.post<Event>("https://www.googleapis.com/calendar/v3/calendars/${calendarId}/events") {
    body = event
    parameter(API_KEY_PARAMETER, apiKey)
    contentType(ContentType.Application.Json)
    header(HttpHeaders.Authorization, token)
}
 

где Событие:

 @Serializable
data class Event(
    val id: String = "",
    val status: String = "",
    val created: String = "",
    val updated: String = "",
    val creator: Attendee,
    val start: DateLabel,
    val end: DateLabel,
    val summary: String = "",
    val description: String = "",
    val location: String = "",
    val attendees: List<Attendee> = emptyList(),
    val maxAttendees: Int = 5
)

@Serializable
data class DateLabel(
    val date: String = "",
    val dateTime: String = "",
    val timeZone: String = ""
)

@Serializable
data class Attendee(val email: String)
 

Комментарии:

1. Можете ли вы предоставить дополнительную информацию о REST interface том, с помощью чего вы выполняете неудачный запрос? Есть ли в этом какой-то код? Вы выполняете ту же самую просьбу? (излишне говорить, что это также работает для меня через Try this API ).

2. @Iamblichus вопрос обновлен

3. @Iamblichus Я нашел это, ошибка новичка, конечно, неправильная ссылка на объект…