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 Cantidad máxima de entradas mostradas en una página de resultados. De forma predeterminada, el valor es de 100 entradas. El tamaño de la página nunca puede superar las 250 entradas. Opcional.
minAccessRole string El rol de acceso mínimo para el 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 información de disponible/ocupado.
  • "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 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 eliminadas. Opcional. El valor predeterminado es False.
showHidden boolean Indica si se deben mostrar las entradas ocultas. Opcional. El valor predeterminado es False.
syncToken string El token obtenido del campo nextSyncToken que se muestra en la última página de resultados de la solicitud de lista anterior. Esto hace que el resultado de esta solicitud de lista contenga solo las entradas que cambiaron desde entonces. Si solo se modificaron los campos de solo lectura, como las propiedades del calendario o las LCA, 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 falsa.
Para garantizar la coherencia del estado del cliente, minAccessRole no se puede especificar junto con nextSyncToken.
Si el syncToken vence, el servidor responderá con un código de respuesta 410 GONE y el cliente debería liberar su almacenamiento y realizar una sincronización completa sin ninguna syncToken.
Obtén más información sobre la sincronización incremental.
Opcional. El valor predeterminado es mostrar todas las entradas.

Autorización

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

Permiso
https://www.googleapis.com/auth/calendar.readonly
https://www.googleapis.com/auth/calendar

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

Cuerpo de la solicitud

No proporciones un cuerpo de 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 colección ("calendar#calendarList").
etag etag ETag de la colección.
nextPageToken string El token que se usa para acceder a la página siguiente de este resultado. Se omite si no hay más resultados disponibles, en cuyo caso se proporciona nextSyncToken.
items[] list Calendarios que están presentes en la lista de calendarios del usuario
nextSyncToken string El 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 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ébala

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