CalendarList: list

Возвращает календари из списка календарей пользователя. Попробуйте сейчас или посмотрите пример .

Запрос

HTTP-запрос

GET https://www.googleapis.com/calendar/v3/users/me/calendarList

Параметры

Имя параметра Ценить Описание
Необязательные параметры запроса
maxResults integer Максимальное количество записей, возвращаемых на одной странице результатов. По умолчанию значение составляет 100 записей. Размер страницы никогда не может превышать 250 записей. Необязательный.
minAccessRole string Минимальная роль доступа для пользователя в возвращаемых записях. Необязательный. По умолчанию нет ограничений.

Приемлемые значения:
  • « freeBusyReader »: пользователь может читать информацию о занятости.
  • « owner »: пользователь может читать и изменять события и списки контроля доступа.
  • « reader »: пользователь может читать события, которые не являются частными.
  • « writer »: пользователь может читать и изменять события.
pageToken string Токен, указывающий, какую страницу результатов следует вернуть. Необязательный.
showDeleted boolean Включать ли в результат удаленные записи списка календаря. Необязательный. По умолчанию установлено значение Ложь.
showHidden boolean Показывать ли скрытые записи. Необязательный. По умолчанию установлено значение Ложь.
syncToken string Токен, полученный из поля nextSyncToken , возвращенного на последней странице результатов предыдущего запроса списка. Результат этого запроса списка будет содержать только записи, которые изменились с тех пор. Если изменились только поля, доступные только для чтения, такие как свойства календаря или списки управления доступом, запись не будет возвращена. Все записи, удаленные и скрытые с момента предыдущего запроса списка, всегда будут в наборе результатов, и нельзя устанавливать для showDeleted и showHidden значение False.
Чтобы обеспечить согласованность состояния клиента, параметр запроса minAccessRole нельзя указывать вместе с nextSyncToken .
Если срок действия syncToken истечет, сервер ответит кодом ответа 410 GONE, и клиент должен очистить свое хранилище и выполнить полную синхронизацию без какого-либо syncToken .
Узнайте больше об инкрементной синхронизации.
Необязательный. По умолчанию возвращаются все записи.

Авторизация

Для этого запроса требуется авторизация хотя бы в одной из следующих областей:

Объем
https://www.googleapis.com/auth/calendar.readonly
https://www.googleapis.com/auth/calendar

Дополнительную информацию см. на странице аутентификации и авторизации .

Тело запроса

Не предоставляйте тело запроса с помощью этого метода.

Ответ

В случае успеха этот метод возвращает тело ответа следующей структуры:

{
  "kind": "calendar#calendarList",
  "etag": etag,
  "nextPageToken": string,
  "nextSyncToken": string,
  "items": [
    calendarList Resource
  ]
}
Имя свойства Ценить Описание Примечания
kind string Тип коллекции (" calendar#calendarList ").
etag etag ETag коллекции.
nextPageToken string Токен, используемый для доступа к следующей странице этого результата. Опускается, если дальнейшие результаты недоступны, и в этом случае предоставляется nextSyncToken .
items[] list Календари, присутствующие в списке календарей пользователя.
nextSyncToken string Токен, используемый позднее для получения только тех записей, которые изменились с момента возврата этого результата. Опускается, если доступны дополнительные результаты, и в этом случае предоставляется nextPageToken .

Примеры

Примечание. Примеры кода, доступные для этого метода, не представляют все поддерживаемые языки программирования (список поддерживаемых языков см. на странице клиентских библиотек ).

Ява

Использует клиентскую библиотеку Java .

import com.google.api.services.calendar.Calendar;
import com.google.api.services.calendar.model.CalendarList;
import com.google.api.services.calendar.model.CalendarListEntry;

// ...

// Initialize Calendar service with valid OAuth credentials
Calendar service = new Calendar.Builder(httpTransport, jsonFactory, credentials)
    .setApplicationName("applicationName").build();

// Iterate through entries in calendar list
String pageToken = null;
do {
  CalendarList calendarList = service.calendarList().list().setPageToken(pageToken).execute();
  List<CalendarListEntry> items = calendarList.getItems();

  for (CalendarListEntry calendarListEntry : items) {
    System.out.println(calendarListEntry.getSummary());
  }
  pageToken = calendarList.getNextPageToken();
} while (pageToken != null);

Питон

Использует клиентскую библиотеку Python .

page_token = None
while True:
  calendar_list = service.calendarList().list(pageToken=page_token).execute()
  for calendar_list_entry in calendar_list['items']:
    print calendar_list_entry['summary']
  page_token = calendar_list.get('nextPageToken')
  if not page_token:
    break

PHP

Использует клиентскую библиотеку PHP .

$calendarList = $service->calendarList->listCalendarList();

while(true) {
  foreach ($calendarList->getItems() as $calendarListEntry) {
    echo $calendarListEntry->getSummary();
  }
  $pageToken = $calendarList->getNextPageToken();
  if ($pageToken) {
    $optParams = array('pageToken' => $pageToken);
    $calendarList = $service->calendarList->listCalendarList($optParams);
  } else {
    break;
  }
}

Руби

Использует клиентскую библиотеку Ruby .

page_token = nil
begin
  result = client.list_calendar_lists(page_token: page_token)
  result.items.each do |e|
    print e.summary + "\n"
  end
  if result.next_page_token != page_token
    page_token = result.next_page_token
  else
    page_token = nil
  end
end while !page_token.nil?

Попробуйте!

Используйте API-интерфейс ниже, чтобы вызвать этот метод для реальных данных и просмотреть ответ.