Freebusy: query

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

Muestra información de disponible/ocupado de un conjunto de calendarios. Pruébalo ahora.

Solicitud

Solicitud HTTP

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

Autorización

Esta solicitud permite la 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

En el cuerpo de la solicitud, proporciona datos con la siguiente estructura:

{
  "timeMin": datetime,
  "timeMax": datetime,
  "timeZone": string,
  "groupExpansionMax": integer,
  "calendarExpansionMax": integer,
  "items": [
    {
      "id": string
    }
  ]
}
Nombre de la propiedad Valor Descripción Notas
timeMin datetime Inicio del intervalo de la consulta con el formato RFC3339.
timeMax datetime Final del intervalo para la consulta con el formato RFC3339.
timeZone string Zona horaria utilizada en la respuesta. Opcional. El valor predeterminado es UTC.
groupExpansionMax integer Cantidad máxima de identificadores de calendario que se proporcionarán para un solo grupo. Opcional. Se muestra un error para un grupo con más miembros que este valor. El valor máximo es 100.
calendarExpansionMax integer Número máximo de calendarios para los que se debe proporcionar información de FreeBusy. Opcional. El valor máximo es 50.
items[] list Lista de calendarios o grupos que se pueden consultar.
items[].id string Es el identificador de un calendario o un grupo.

Respuesta

Si se aplica correctamente, este método muestra un cuerpo de respuesta con la siguiente estructura:

{
  "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
        }
      ]
    }
  }
}
Nombre de la propiedad Valor Descripción Notas
kind string Tipo de recurso ("calendar#freeBusy").
timeMin datetime El inicio del intervalo.
timeMax datetime Final del intervalo.
groups object Expansión de grupos.
groups.(key) nested object Lista de calendarios que son miembros de este grupo.
groups.(key).errors[] list Errores opcionales (si fallaron los cálculos del grupo).
groups.(key).errors[].domain string Dominio o categoría amplia del error.
groups.(key).errors[].reason string Motivo específico del error. Estos son algunos de los valores posibles:
  • "groupTooBig": El grupo de usuarios solicitado es demasiado grande para una sola consulta.
  • "tooManyCalendarsRequested": La cantidad de calendarios solicitados es demasiado grande para una sola consulta.
  • "notFound": No se encontró el recurso solicitado.
  • "internalError": El servicio de API encontró un error interno.
Es posible que se agreguen más tipos de errores en el futuro, por lo que los clientes deben procesar correctamente los estados de errores adicionales que no estén incluidos en esta lista.
groups.(key).calendars[] list Lista de los identificadores de los calendarios dentro de un grupo.
calendars object Lista de información de disponible/ocupado de los calendarios.
calendars.(key) nested object Expansión de disponibilidad para un solo calendario
calendars.(key).errors[] list Errores opcionales (si fallaron los cálculos del calendario).
calendars.(key).errors[].domain string Dominio o categoría amplia del error.
calendars.(key).errors[].reason string Motivo específico del error. Estos son algunos de los valores posibles:
  • "groupTooBig": El grupo de usuarios solicitado es demasiado grande para una sola consulta.
  • "tooManyCalendarsRequested": La cantidad de calendarios solicitados es demasiado grande para una sola consulta.
  • "notFound": No se encontró el recurso solicitado.
  • "internalError": El servicio de API encontró un error interno.
Es posible que se agreguen más tipos de errores en el futuro, por lo que los clientes deben procesar correctamente los estados de errores adicionales que no estén incluidos en esta lista.
calendars.(key).busy[] list Lista de períodos durante los cuales este calendario debe considerarse como ocupado.
calendars.(key).busy[].start datetime Inicio (incluido) del período.
calendars.(key).busy[].end datetime Final (exclusivo) del período.

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.