CalendarList: list

Muestra los calendarios de la lista de calendarios del usuario. Pruébalo ahora y ve un ejemplo.

Solicitud

Solicitud HTTP

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

Parámetros

Nombre del parámetro Valor Descripción
Parámetros de consulta opcionales
maxResults integer Es la cantidad máxima de entradas que se muestran en una página de resultados. De forma predeterminada, el valor es de 100 entradas. El tamaño de la página nunca puede ser superior a 250 entradas. Opcional.
minAccessRole string Es el rol de acceso mínimo del usuario en las entradas que se muestran. Opcional. El valor predeterminado es sin restricciones.

Los valores aceptables son los siguientes:
  • "freeBusyReader": El usuario puede leer la información de disponibilidad.
  • "owner": El usuario puede leer y modificar eventos y listas de control de acceso.
  • "reader": El usuario puede leer eventos que no son privados.
  • "writer": El usuario puede leer y modificar eventos.
pageToken string Es un token que especifica qué página de resultados se mostrará. Opcional.
showDeleted boolean Indica si se deben incluir en el resultado las entradas de la lista de calendarios borradas. Opcional. El valor predeterminado es False.
showHidden boolean Indica si se deben mostrar las entradas ocultas. Opcional. El valor predeterminado es False.
syncToken string Es el token obtenido del campo nextSyncToken que se muestra en la última página de resultados de la solicitud de lista anterior. Hace que el resultado de esta solicitud de lista contenga solo las entradas que cambiaron desde entonces. Si solo cambiaron los campos de solo lectura, como las propiedades del calendario o las ACL, no se mostrará la entrada. Todas las entradas borradas y ocultas desde la solicitud de lista anterior siempre estarán en el conjunto de resultados y no se permite establecer showDeleted ni showHidden como Falso.
Para garantizar la coherencia del estado del cliente, no se puede especificar el parámetro de consulta minAccessRole junto con nextSyncToken.
Si vence el syncToken, el servidor responderá con un código de respuesta 410 GONE y el cliente deberá borrar su almacenamiento y realizar una sincronización completa sin ningún syncToken.
Obtén más información sobre la sincronización incremental.
Opcional. La opción predeterminada es mostrar todas las entradas.

Autorización

Esta solicitud requiere autorización con al menos uno de los siguientes permisos:

Alcance
https://www.googleapis.com/auth/calendar.readonly
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.calendarlist
https://www.googleapis.com/auth/calendar.calendarlist.readonly

Para obtener más información, consulta la página autenticación y autorización.

Cuerpo de la solicitud

No proporciones un cuerpo de la solicitud con este método.

Respuesta

Si se aplica correctamente, este método muestra un cuerpo de respuesta con la siguiente estructura:

{
  "kind": "calendar#calendarList",
  "etag": etag,
  "nextPageToken": string,
  "nextSyncToken": string,
  "items": [
    calendarList Resource
  ]
}
Nombre de la propiedad Valor Descripción Notas
kind string Es el tipo de la colección ("calendar#calendarList").
etag etag ETag de la colección.
nextPageToken string Es el token que se usa para acceder a la siguiente página de este resultado. Se omite si no hay más resultados disponibles, en cuyo caso se proporciona nextSyncToken.
items[] list Son los calendarios que están presentes en la lista de calendarios del usuario.
nextSyncToken string Es un token que se usa más adelante para recuperar solo las entradas que cambiaron desde que se mostró este resultado. Se omite si hay más resultados disponibles, en cuyo caso se proporciona nextPageToken.

Ejemplos

Nota: Los ejemplos de código disponibles para este método no representan todos los lenguajes de programación admitidos (consulta la página de bibliotecas cliente para consultar una lista de lenguajes admitidos).

Java

Usa la biblioteca cliente de 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

Usa la biblioteca cliente de 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

Usa la biblioteca cliente de 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

Usa la biblioteca cliente de 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?

Pruébalo

Usa el Explorador de APIs que aparece a continuación para llamar a este método en datos en vivo y ver la respuesta.