Раньше я запрашивал серверы caldav для предоставления всех определенных календарей для данного пользователя. Это работает с fruux/ownCloud (Sabre), а также с GCalendar классическим методом. Запрос такой:
method: PROPFIND headers:Depth: 1
urlstr:https://www.google.com/calendar/dav/{theUserName}@gmail.com/
contentType:application/xml
content:
<d:propfind xmlns:d="DAV:" xmlns:cs="http://calendarserver.org/ns/" xmlns:c="urn:ietf:params:xml:ns:caldav">
<d:prop>
<d:resourcetype />
<d:displayname />
<cs:getctag />
<c:supported-calendar-component-set />
</d:prop>
</d:propfind>
Переход на Google OAuth2 имеет другие вызовы, ulrstr: будет выглядеть примерно так: https://apidata.googleusercontent.com/caldav/v2/{calid}/user
Здесь 'calid' должен быть конкретным календарем [1] Там сказано:
Где calid следует заменить на «идентификатор календаря» календаря, к которому нужно получить доступ
Цель состоит в том, чтобы получить все календари для учетной записи пользователя! Так что эти звонки НЕ помогут.
Есть предложения, как получить их в мире Google/CalDAV/V2?
Гюнтер
См. также: [1] https://developers.google.com/google-apps/calendar/caldav/v2/guide