Freebusy: query

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

Anfrage

HTTP-Anfrage

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

Autorisierung

Diese Anfrage lässt eine Autorisierung mit mindestens einem der folgenden Bereiche zu:

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

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 In der Antwort verwendete Zeitzone. Optional. Der Standardwert ist UTC.
groupExpansionMax integer Maximale Anzahl von Kalenderkennungen, die für eine einzelne Gruppe angegeben werden sollen. Optional. Für eine Gruppe mit mehr Mitgliedern als dieser Wert wird ein Fehler zurückgegeben. Der Höchstwert ist 100.
calendarExpansionMax integer Maximale Anzahl von Kalendern, für die FreeBusy-Informationen bereitgestellt werden sollen. Optional. Der Höchstwert ist 50.
items[] list Liste der abzufragenden Kalender und/oder Gruppen.
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 Ende des Intervalls.
groups object Erweiterung der Gruppen.
groups.(key) nested object Liste der Kalender, die zu dieser Gruppe gehören.
groups.(key).errors[] list Optionale Fehler (wenn die Berechnung für die Gruppe fehlgeschlagen ist).
groups.(key).errors[].domain string Die Domain oder die allgemeine Kategorie des Fehlers.
groups.(key).errors[].reason string Spezifischer Grund für den Fehler. Beispiele für mögliche Werte:
  • groupTooBig“ - Die Gruppe der angeforderten Nutzer ist zu groß für eine einzelne Abfrage.
  • tooManyCalendarsRequested“ - Die Anzahl der angeforderten Kalender ist zu groß für eine einzelne Abfrage.
  • notFound“ - Die angeforderte Ressource wurde nicht gefunden.
  • internalError“ - Im API-Dienst ist ein interner Fehler aufgetreten.
In Zukunft werden möglicherweise weitere Fehlertypen hinzugefügt. Daher sollten Clients mit Fehlerstatus umgehen, die nicht in dieser Liste enthalten sind.
groups.(key).calendars[] list Liste der Kalender Kennzeichnungen innerhalb einer Gruppe.
calendars object Liste mit Informationen zur Verfügbarkeit in Kalendern.
calendars.(key) nested object Kostenlos/Belegt-Status für einen einzelnen Kalender anzeigen.
calendars.(key).errors[] list Optionale Fehler (wenn die Berechnung für den Kalender fehlgeschlagen ist).
calendars.(key).errors[].domain string Die Domain oder die allgemeine Kategorie des Fehlers.
calendars.(key).errors[].reason string Spezifischer Grund für den Fehler. Beispiele für mögliche Werte:
  • groupTooBig“ - Die Gruppe der angeforderten Nutzer ist zu groß für eine einzelne Abfrage.
  • tooManyCalendarsRequested“ - Die Anzahl der angeforderten Kalender ist zu groß für eine einzelne Abfrage.
  • notFound“ - Die angeforderte Ressource wurde nicht gefunden.
  • internalError“ - Im API-Dienst ist ein interner Fehler aufgetreten.
In Zukunft werden möglicherweise weitere Fehlertypen hinzugefügt. Daher sollten Clients mit Fehlerstatus umgehen, die nicht in dieser Liste enthalten sind.
calendars.(key).busy[] list Liste der Zeiträume, in denen dieser Kalender als beschäftigt angesehen werden soll.
calendars.(key).busy[].start datetime Der (einschließlich) Beginn des Zeitraums.
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.