manage_calendars: use nextPageToken for list

By default maximum number of entries returned on one result page is 100
This commit is contained in:
Dmitry Belyaev 2020-03-07 17:54:16 +03:00
parent 55b67469be
commit b0a39a1b8c
Signed by: b4tman
GPG Key ID: 41A00BF15EA7E5F3
1 changed files with 10 additions and 2 deletions

View File

@ -69,8 +69,16 @@ def load_config():
def list_calendars(service):
response = service.calendarList().list(fields='items(id,summary)').execute()
for calendar in response.get('items'):
calendars = []
page_token = None
while True:
response = service.calendarList().list(fields='nextPageToken,items(id,summary)', pageToken=page_token).execute()
if 'items' in response:
calendars.extend(response['items'])
page_token = response.get('nextPageToken')
if not page_token:
break
for calendar in calendars:
print('{summary}: {id}'.format_map(calendar))