CalendarList: list

Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

Muestra los calendarios en 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 que se muestran en una página de resultados. De forma predeterminada, el valor es 100 entradas. El tamaño de la página nunca puede ser mayor que 250 entradas. Opcional.
minAccessRole string La función de acceso mínimo del usuario en las entradas que se muestran. Opcional. El valor predeterminado no tiene 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 El token que especifica la página de resultados que se mostrará. Opcional.
showDeleted boolean Indica si se deben incluir las entradas de la lista de calendarios eliminadas en el resultado. Opcional. El valor predeterminado es False.
showHidden boolean Indica si se muestran entradas ocultas. Opcional. El valor predeterminado es False.
syncToken string El token que se obtuvo del campo nextSyncToken que se mostró en la última página de resultados de la solicitud de lista anterior. Hace que el resultado de esta solicitud de lista solo contenga entradas que hayan cambiado desde entonces. Si solo cambiaron los campos de solo lectura, como las propiedades del calendario o las LCA, la entrada no se mostrará. Todas las entradas borradas y ocultas desde la solicitud de lista anterior siempre estarán en el conjunto de resultados y no se puede establecer showDeleted ni showHidden como falso.
Para garantizar la coherencia del estado del cliente, el parámetro de búsqueda 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á liberar su almacenamiento y realizar una sincronización completa sin 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 alcances:

Alcance
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 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 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 usó 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 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ébela.

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