CalendarList: list

Restituisce i calendari nell'elenco di calendari dell'utente. Prova subito o guarda un esempio.

Richiesta

Richiesta HTTP

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

Parametri

Nome del parametro Valore Descrizione
Parametri di query facoltativi
maxResults integer Numero massimo di voci restituite in una pagina dei risultati. Per impostazione predefinita, il valore è 100 voci. La dimensione della pagina non può mai essere superiore a 250 voci. (Facoltativo)
minAccessRole string Il ruolo di accesso minimo per l'utente nelle voci restituite. (Facoltativo) L'impostazione predefinita non prevede alcuna limitazione.

I valori accettati sono:
  • "freeBusyReader": l'utente può leggere le informazioni sulla disponibilità.
  • "owner": l'utente può leggere e modificare eventi ed elenchi di controllo dell'accesso.
  • "reader": l'utente può leggere gli eventi non privati.
  • "writer": l'utente può leggere e modificare gli eventi.
pageToken string Token che specifica la pagina dei risultati da restituire. (Facoltativo)
showDeleted boolean Indica se includere nel risultato voci dell'elenco di calendari eliminati. (Facoltativo) Il valore predefinito è False.
showHidden boolean Indica se mostrare le voci nascoste. (Facoltativo) Il valore predefinito è False.
syncToken string Token ottenuto dal campo nextSyncToken restituito nell'ultima pagina dei risultati della precedente richiesta di elenco. Il risultato di questa richiesta di elenco contiene solo le voci che sono cambiate da allora. Se sono stati modificati solo i campi di sola lettura, come le proprietà del calendario o gli ACL, la voce non verrà restituita. Tutte le voci eliminate e nascoste poiché la precedente richiesta di elenco saranno sempre nel set di risultati e non è possibile impostare showDeletedshowHidden su False.
Per garantire la coerenza dello stato del client, il parametro di query minAccessRole non può essere specificato insieme a nextSyncToken.
Se syncToken scade, il server risponderà con un codice di risposta 410 GONE e il client dovrebbe cancellare lo spazio di archiviazione ed eseguire una sincronizzazione completa senza syncToken.
Scopri di più sulla sincronizzazione incrementale.
Facoltativo. L'impostazione predefinita è la restituzione di tutte le voci.

Autorizzazione

Questa richiesta richiede l'autorizzazione con almeno uno dei seguenti ambiti:

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

Per ulteriori informazioni, consulta la pagina Autenticazione e autorizzazione.

Corpo della richiesta

Non fornire un corpo della richiesta con questo metodo.

Risposta

In caso di esito positivo, questo metodo restituisce un corpo della risposta con la seguente struttura:

{
  "kind": "calendar#calendarList",
  "etag": etag,
  "nextPageToken": string,
  "nextSyncToken": string,
  "items": [
    calendarList Resource
  ]
}
Nome proprietà Valore Descrizione Note
kind string Tipo di raccolta ("calendar#calendarList").
etag etag ETag della raccolta.
nextPageToken string Token utilizzato per accedere alla pagina successiva di questo risultato. Omesso se non sono disponibili ulteriori risultati, in questo caso viene fornito il valore nextSyncToken.
items[] list Calendari presenti nell'elenco dei calendari dell'utente.
nextSyncToken string Token utilizzato in un secondo momento per recuperare solo le voci che sono state modificate dopo che è stato restituito questo risultato. Omesso se sono disponibili ulteriori risultati, in questo caso viene fornito il valore nextPageToken.

Esempi

Nota: gli esempi di codice disponibili per questo metodo non rappresentano tutti i linguaggi di programmazione supportati (consulta la pagina relativa alle librerie client per un elenco dei linguaggi supportati).

Java

Utilizza la libreria client 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

Utilizza la libreria client 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

Utilizza la libreria client 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

Utilizza la libreria client 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?

Prova

Usa Explorer API in basso per chiamare questo metodo sui dati in tempo reale e visualizzare la risposta.