Events: list

Gibt Termine im angegebenen Kalender zurück Probieren Sie es gleich aus oder sehen Sie sich ein Beispiel an.

Anfragen

HTTP-Anfrage

GET https://www.googleapis.com/calendar/v3/calendars/calendarId/events

Parameter

Parametername Wert Beschreibung
Pfadparameter
calendarId string Kalender-ID. Rufen Sie die Methode calendarList.list auf, um Kalender-IDs abzurufen. Wenn Sie auf den Hauptkalender des aktuell angemeldeten Nutzers zugreifen möchten, verwenden Sie das Keyword „primary“.
Optionale Abfrageparameter
alwaysIncludeEmail boolean Eingestellt und ignoriert.
eventTypes string Ereignistypen, die zurückgegeben werden sollen. Optional. Dieser Parameter kann mehrmals wiederholt werden, um Ereignisse verschiedener Typen zurückzugeben. Wenn nichts festgelegt ist, werden alle Ereignistypen zurückgegeben.

Zulässige Werte sind:
  • default“: Regelmäßige Ereignisse.
  • focusTime“: Fokuszeit-Ereignisse.
  • outOfOffice“: Außer-Haus-Termine.
  • workingLocation“: Arbeitsorte.
iCalUID string Gibt eine Termin-ID im iKalender-Format an, die in der Antwort bereitgestellt wird. Optional. Verwenden Sie diese Option, wenn Sie anhand der iKalender-ID nach einem Termin suchen möchten.
maxAttendees integer Die maximale Anzahl von Teilnehmern, die in die Antwort aufgenommen werden sollen. Wenn es mehr als die angegebene Anzahl von Teilnehmern gibt, wird nur der Teilnehmer zurückgegeben. Optional.
maxResults integer Maximale Anzahl der auf einer Ergebnisseite zurückgegebenen Ereignisse. Die Anzahl der Ereignisse auf der Ergebnisseite kann unter diesem Wert oder gar nicht liegen, auch wenn mehr Ereignisse mit der Abfrage übereinstimmen. Unvollständige Seiten können durch ein nicht leeres nextPageToken-Feld in der Antwort erkannt werden. Der Standardwert ist 250 Ereignisse. Die Seitengröße darf 2.500 Ereignisse nicht überschreiten. Optional.
orderBy string Die Reihenfolge der im Ergebnis zurückgegebenen Ereignisse. Optional. Die Standardeinstellung ist eine nicht angegebene, stabile Reihenfolge.

Zulässige Werte sind:
  • startTime“: Sortiert nach Startdatum/-zeit (aufsteigend). Dies ist nur verfügbar, wenn einzelne Ereignisse abgefragt werden, d. h., der Parameter singleEvents ist „True“.
  • updated: Sortiert nach dem Zeitpunkt der letzten Änderung (aufsteigend).
pageToken string Token, das angibt, welche Ergebnisseite zurückgegeben werden soll. Optional.
privateExtendedProperty string Die Einschränkung der erweiterten Attribute wird als „propertyName=value“ angegeben. Stimmt nur mit privaten Properties überein. Dieser Parameter kann mehrmals wiederholt werden, um Ereignisse zurückzugeben, die allen angegebenen Einschränkungen entsprechen.
q string Freitext-Suchbegriffe, um in den folgenden Feldern Ereignisse zu finden, die diesen Begriffen entsprechen:
  • summary
  • description
  • location
  • displayName des Teilnehmers
  • email des Teilnehmers
  • displayName des Organisators
  • email des Organisators
  • workingLocationProperties.officeLocation.buildingId
  • workingLocationProperties.officeLocation.deskId
  • workingLocationProperties.officeLocation.label
  • workingLocationProperties.customLocation.label

Mit diesen Suchbegriffen werden auch vordefinierte Keywords mit allen Übersetzungen von Anzeigetiteln wie „Arbeitsort“, „Abwesenheit“ und „Fokuszeit“ abgeglichen. Wenn Sie beispielsweise nach „Büro“ oder „Bureau“ suchen, werden Termine vom Typ officeLocation für Arbeitsorte zurückgegeben, während die Suche nach „Abwesend“ oder „Absender“ solche Ereignisse zurückgibt. Optional.

sharedExtendedProperty string Die Einschränkung der erweiterten Attribute wird als „propertyName=value“ angegeben. Stimmt nur mit gemeinsam genutzten Properties überein. Dieser Parameter kann mehrmals wiederholt werden, um Ereignisse zurückzugeben, die allen angegebenen Einschränkungen entsprechen.
showDeleted boolean Gibt an, ob gelöschte Ereignisse (wobei status ist gleich „cancelled“) in das Ergebnis einbezogen werden soll. Abgesagte Einträge wiederkehrender Termine (jedoch nicht der zugrunde liegende wiederkehrende Termin) werden weiterhin einbezogen, wenn showDeleted und singleEvents beide „Falsch“ sind. Wenn showDeleted und singleEvents beide "True" sind, werden nur einzelne Instanzen gelöschter Ereignisse (aber nicht die zugrunde liegenden wiederkehrenden Ereignisse) zurückgegeben. Optional. Die Standardeinstellung ist "False".
showHiddenInvitations boolean Gibt an, ob ausgeblendete Einladungen in das Ergebnis aufgenommen werden sollen. Optional. Die Standardeinstellung ist "False".
singleEvents boolean Gibt an, ob wiederkehrende Ereignisse auf Instanzen erweitert werden und nur einzelne einmalige Ereignisse und Instanzen wiederkehrender Ereignisse zurückgegeben werden sollen, nicht jedoch die zugrunde liegenden wiederkehrenden Ereignisse selbst. Optional. Die Standardeinstellung ist "False".
syncToken string Token aus dem Feld nextSyncToken, das auf der letzten Ergebnisseite der vorherigen Listenanfrage zurückgegeben wurde. Dadurch enthält das Ergebnis dieser Listenanfrage nur Einträge, die sich seitdem geändert haben. Alle seit der vorherigen Listenanfrage gelöschten Ereignisse werden immer in die Ergebnismenge aufgenommen und showDeleted darf nicht auf „False“ gesetzt werden.
Es gibt mehrere Abfrageparameter, die nicht zusammen mit nextSyncToken angegeben werden können, um für Konsistenz des Clientstatus zu sorgen.

Diese sind:
  • iCalUID
  • orderBy
  • privateExtendedProperty
  • q
  • sharedExtendedProperty
  • timeMin
  • timeMax
  • updatedMin
Alle anderen Abfrageparameter sollten mit denen bei der ersten Synchronisierung übereinstimmen, um undefiniertes Verhalten zu vermeiden. Wenn die syncToken abläuft, antwortet der Server mit dem Antwortcode 410 GONE und der Client sollte seinen Speicher leeren und eine vollständige Synchronisierung ohne syncToken durchführen.
Weitere Informationen zur inkrementellen Synchronisierung.
Optional. Standardmäßig werden alle Einträge zurückgegeben.
timeMax datetime Obergrenze (ausschließlich) für die Startzeit eines Ereignisses, nach der gefiltert werden soll. Optional. Standardmäßig wird nicht nach der Startzeit gefiltert. Muss ein RFC3339-Zeitstempel mit obligatorischem Zeitzonen-Offset sein, z. B. 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Millisekunden können angegeben werden, werden aber ignoriert. Wenn timeMin festgelegt ist, muss timeMax größer als timeMin sein.
timeMin datetime Die Untergrenze (ausschließlich) für die Endzeit eines Ereignisses, nach der gefiltert werden soll. Optional. Standardmäßig wird nicht nach Ende gefiltert. Muss ein RFC3339-Zeitstempel mit obligatorischem Zeitzonen-Offset sein, z. B. 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Millisekunden können angegeben werden, werden aber ignoriert. Wenn timeMax festgelegt ist, muss timeMin kleiner als timeMax sein.
timeZone string Die in der Antwort verwendete Zeitzone. Optional. Die Standardeinstellung ist die Zeitzone des Kalenders.
updatedMin datetime Die Untergrenze für den Zeitpunkt der letzten Änderung eines Ereignisses (als RFC3339-Zeitstempel), nach dem gefiltert werden soll. Wenn angegeben, werden Einträge, die nach diesem Zeitpunkt gelöscht wurden, unabhängig von showDeleted immer einbezogen. Optional. Standardmäßig wird nicht nach dem Zeitpunkt der letzten Änderung gefiltert.

Autorisierung

Diese Anfrage ermöglicht die Autorisierung mit mindestens einem der folgenden Bereiche:

Bereich
https://www.googleapis.com/auth/calendar.readonly
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.events.readonly
https://www.googleapis.com/auth/calendar.events

Weitere Informationen finden Sie auf der Seite Authentifizierung und Autorisierung.

Anfragetext

Mit dieser Methode keinen Anfragetext bereitstellen.

Antwort

Bei Erfolg gibt diese Methode einen Antworttext mit der folgenden Struktur zurück:

{
  "kind": "calendar#events",
  "etag": etag,
  "summary": string,
  "description": string,
  "updated": datetime,
  "timeZone": string,
  "accessRole": string,
  "defaultReminders": [
    {
      "method": string,
      "minutes": integer
    }
  ],
  "nextPageToken": string,
  "nextSyncToken": string,
  "items": [
    events Resource
  ]
}
Name der Eigenschaft Wert Beschreibung Hinweise
kind string Typ der Sammlung („calendar#events“)
etag etag Das ETag der Sammlung.
summary string Titel des Kalenders. Schreibgeschützt.
description string Beschreibung des Kalenders Schreibgeschützt.
updated datetime Zeitpunkt der letzten Änderung des Kalenders (als RFC3339-Zeitstempel). Schreibgeschützt.
timeZone string Die Zeitzone des Kalenders. Schreibgeschützt.
accessRole string Die Zugriffsrolle des Nutzers für diesen Kalender Schreibgeschützt. Mögliche Werte sind:
  • none“: Der Nutzer hat keinen Zugriff.
  • "freeBusyReader": Der Nutzer hat Lesezugriff auf Informationen zur Verfügbarkeit.
  • "reader": Der Nutzer hat Lesezugriff auf den Kalender. Private Termine sind für Nutzer mit Lesezugriff sichtbar, die Termindetails werden jedoch ausgeblendet.
  • writer“: Der Nutzer hat Lese- und Schreibzugriff auf den Kalender. Private Termine sind für Nutzer mit Autorenzugriff sichtbar, und die Termindetails sind sichtbar.
  • "owner": Der Nutzer ist Eigentümer des Kalenders. Diese Rolle verfügt über alle Berechtigungen der Rolle „Autor“ und bietet darüber hinaus die Möglichkeit, ACLs aufzurufen und zu bearbeiten.
defaultReminders[] list Die Standarderinnerungen im Kalender für den authentifizierten Nutzer. Diese Erinnerungen gelten für alle Termine in diesem Kalender, die sie nicht explizit überschreiben (also wenn reminders.useDefault nicht auf „True“ gesetzt ist).
defaultReminders[].method string Die von dieser Erinnerung verwendete Methode. Mögliche Werte sind:
  • "email": Erinnerungen werden per E-Mail gesendet.
  • popup“: Erinnerungen werden über ein Pop-up auf der Benutzeroberfläche gesendet.

Erforderlich, wenn eine Erinnerung hinzugefügt wird.

Bearbeitbar
defaultReminders[].minutes integer Anzahl der Minuten vor Beginn des Ereignisses, in denen die Erinnerung ausgelöst werden soll. Gültige Werte liegen zwischen 0 und 40.320 (4 Wochen in Minuten).

Erforderlich, wenn eine Erinnerung hinzugefügt wird.

Bearbeitbar
nextPageToken string Token, das für den Zugriff auf die nächste Seite dieses Ergebnisses verwendet wird. Wird ausgelassen, wenn keine weiteren Ergebnisse verfügbar sind. In diesem Fall wird nextSyncToken angegeben.
items[] list Liste der Termine im Kalender
nextSyncToken string Token, das zu einem späteren Zeitpunkt verwendet wird, um nur die Einträge abzurufen, die sich seit der Rückgabe dieses Ergebnisses geändert haben. Wird ausgelassen, wenn weitere Ergebnisse verfügbar sind. In diesem Fall wird nextPageToken angegeben.

Beispiele

Hinweis: Bei den für diese Methode verfügbaren Codebeispielen sind nicht alle unterstützten Programmiersprachen vertreten. Eine Liste der unterstützten Sprachen finden Sie auf der Seite für Clientbibliotheken.

Java

Verwendet die Java-Clientbibliothek.

import com.google.api.services.calendar.Calendar;
import com.google.api.services.calendar.model.Event;
import com.google.api.services.calendar.model.Events;

// ...

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

// Iterate over the events in the specified calendar
String pageToken = null;
do {
  Events events = service.events().list('primary').setPageToken(pageToken).execute();
  List<Event> items = events.getItems();
  for (Event event : items) {
    System.out.println(event.getSummary());
  }
  pageToken = events.getNextPageToken();
} while (pageToken != null);

Python

Verwendet die Python-Clientbibliothek.

page_token = None
while True:
  events = service.events().list(calendarId='primary', pageToken=page_token).execute()
  for event in events['items']:
    print event['summary']
  page_token = events.get('nextPageToken')
  if not page_token:
    break

PHP

Verwendet die PHP-Clientbibliothek.

$events = $service->events->listEvents('primary');

while(true) {
  foreach ($events->getItems() as $event) {
    echo $event->getSummary();
  }
  $pageToken = $events->getNextPageToken();
  if ($pageToken) {
    $optParams = array('pageToken' => $pageToken);
    $events = $service->events->listEvents('primary', $optParams);
  } else {
    break;
  }
}

Ruby

Verwendet die Ruby-Clientbibliothek.

page_token = nil
begin
  result = client.list_events('primary', 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?

Jetzt testen

Verwenden Sie den unten angegebenen APIs Explorer, um diese Methode für Livedaten aufzurufen und die Antwort einzusehen.