Календарь Google - Получить общедоступную ссылку через API / получить значение 'cid' для календаря - PullRequest
0 голосов
/ 13 марта 2019

Могу ли я получить значение cid Календаря Google через API?

Идентификатор 'id', возвращенный в API службы Календаря Google list / insert functionне очень полезен (в отличие от полезности 'id' при работе с сервисом Google Drive).Используя возвращенное id, я могу создать URL для общедоступного календаря, но я действительно хочу создать URL для добавления календаря в ваши календари.Тот же, что и при переходе в настройки календаря и нажатии «Получить доступную ссылку».

Совместно используемая ссылка выглядит следующим образом:

https://calendar.google.com/calendar?cid=reallyLongSequenceOfLettersAndNumber

Если я могу просто получить это значение 'cid' программно ...

Вот данные, возвращаемые при использовании API для составления списка календарей: enter image description here

1 Ответ

0 голосов
/ 14 марта 2019

Я нашел ответ здесь .

Оказывается, возвращенный id - это cid в кодировке base64.Очевидно, иногда исходный id будет работать как cid. Для получения дополнительной информации обратитесь к ссылке выше.

Моя функция python для перевода id в base64 выглядит следующим образом.:

    def getCalenderCID(calendarId):
        calendarId_bytes = calendarId.encode('utf-8')
        cid_base64 = base64.b64encode(calendarId_bytes)
        cid = cid_base64.decode().rstrip('=')
        return cid
...