Freebusy: query

Gibt Informationen zur Verfügbarkeit für eine Reihe von Kalendern zurück. Jetzt testen

Anfrage

HTTP-Anfrage

POST https://www.googleapis.com/calendar/v3/freeBusy

Autorisierung

Diese Anfrage ermöglicht die Autorisierung für mindestens einen der folgenden Zugriffsbereiche:

Umfang
https://www.googleapis.com/auth/calendar.readonly
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.events.freebusy
https://www.googleapis.com/auth/calendar.freebusy

Weitere Informationen finden Sie auf der Seite Authentifizierung und Autorisierung.

Anfragetext

Geben Sie im Anfragetext Daten mit der folgenden Struktur ein:

{
  "timeMin": datetime,
  "timeMax": datetime,
  "timeZone": string,
  "groupExpansionMax": integer,
  "calendarExpansionMax": integer,
  "items": [
    {
      "id": string
    }
  ]
}
Name der Eigenschaft Wert Beschreibung Hinweise
timeMin datetime Der Beginn des Intervalls für die Abfrage, formatiert gemäß RFC3339.
timeMax datetime Das Ende des Intervalls für die Abfrage, formatiert gemäß RFC3339.
timeZone string Die in der Antwort verwendete Zeitzone. Optional. Der Standardwert ist UTC.
groupExpansionMax integer Maximale Anzahl von Kalender-IDs, die für eine einzelne Gruppe angegeben werden können. Optional. Bei einer Gruppe mit mehr Mitgliedern als diesem Wert wird ein Fehler zurückgegeben. Der Höchstwert ist 100.
calendarExpansionMax integer Die maximale Anzahl von Kalendern, für die Informationen zur Verfügbarkeit angegeben werden sollen. Optional. Der Höchstwert ist 50.
items[] list Liste der Kalender und/oder Gruppen, die abgefragt werden sollen.
items[].id string Die Kennung eines Kalenders oder einer Gruppe.

Antwort

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

{
  "kind": "calendar#freeBusy",
  "timeMin": datetime,
  "timeMax": datetime,
  "groups": {
    (key): {
      "errors": [
        {
          "domain": string,
          "reason": string
        }
      ],
      "calendars": [
        string
      ]
    }
  },
  "calendars": {
    (key): {
      "errors": [
        {
          "domain": string,
          "reason": string
        }
      ],
      "busy": [
        {
          "start": datetime,
          "end": datetime
        }
      ]
    }
  }
}
Name der Eigenschaft Wert Beschreibung Hinweise
kind string Typ der Ressource („calendar#freeBusy“).
timeMin datetime Der Beginn des Intervalls.
timeMax datetime Das Ende des Intervalls.
groups object Ausweitung von Gruppen.
groups.(key) nested object Liste der Kalender, die zu dieser Gruppe gehören.
groups.(key).errors[] list Optionale Fehler (falls die Berechnung für die Gruppe fehlgeschlagen ist).
groups.(key).errors[].domain string Domain oder allgemeine Kategorie des Fehlers.
groups.(key).errors[].reason string Der spezifische Grund für den Fehler. Beispiele für mögliche Werte:
  • groupTooBig“: Die angeforderte Gruppe von Nutzern ist für eine einzelne Abfrage zu groß.
  • tooManyCalendarsRequested“: Die Anzahl der angeforderten Kalender ist für eine einzelne Abfrage zu groß.
  • notFound“: Die angeforderte Ressource wurde nicht gefunden.
  • internalError“: Beim API-Dienst ist ein interner Fehler aufgetreten.
 Zusätzliche Fehlertypen werden möglicherweise in Zukunft hinzugefügt. Daher sollten Clients mit zusätzlichen Fehlerstatus umgehen, die nicht in dieser Liste enthalten sind.
groups.(key).calendars[] list Liste der Kalender-IDs innerhalb einer Gruppe.
calendars object Liste der Verfügbarkeitsinformationen für Kalender.
calendars.(key) nested object Erweiterungen für die Verfügbarkeit für einen einzelnen Kalender
calendars.(key).errors[] list Optionale Fehler (falls die Berechnung für den Kalender fehlgeschlagen ist).
calendars.(key).errors[].domain string Domain oder allgemeine Kategorie des Fehlers.
calendars.(key).errors[].reason string Der spezifische Grund für den Fehler. Beispiele für mögliche Werte:
  • groupTooBig“: Die angeforderte Gruppe von Nutzern ist für eine einzelne Abfrage zu groß.
  • tooManyCalendarsRequested“: Die Anzahl der angeforderten Kalender ist für eine einzelne Abfrage zu groß.
  • notFound“: Die angeforderte Ressource wurde nicht gefunden.
  • internalError“: Beim API-Dienst ist ein interner Fehler aufgetreten.
 Zusätzliche Fehlertypen werden möglicherweise in Zukunft hinzugefügt. Daher sollten Clients auch mit zusätzlichen Fehlerstatus umgehen, die nicht in dieser Liste enthalten sind.
calendars.(key).busy[] list Liste der Zeiträume, in denen dieser Kalender als belegt betrachtet werden soll.
calendars.(key).busy[].start datetime Der Beginn des Zeitraums (inklusive).
calendars.(key).busy[].end datetime Das (exklusive) Ende des Zeitraums.

Testen!

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