Events: import

Importa un evento. Esta operación se usa para agregar una copia privada de un evento existente a un calendario. Solo se pueden importar los eventos con un eventType de default.

Comportamiento desaprobado: Si se importa un evento que no sea de tipo default, su tipo cambiará a default y se descartarán las propiedades específicas del tipo de evento que pueda tener.

Pruébalo ahora.

Solicitud

Solicitud HTTP

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

Parámetros

Nombre del parámetro Valor Descripción
Parámetros de ruta
calendarId string Es el identificador del calendario. Para recuperar los IDs de calendarios, llama al método calendarList.list. Si quieres acceder al calendario principal del usuario que accedió actualmente, usa la palabra clave "primary".
Parámetros de consulta opcionales
conferenceDataVersion integer Número de versión de los datos de la conferencia que admite el cliente de la API. La versión 0 no admite datos de conferencias y los ignora en el cuerpo del evento. La versión 1 habilita la compatibilidad con la copia de ConferenceData y la creación de conferencias nuevas con el campo createRequest de conferenceData. El valor predeterminado es 0. Los valores aceptables son 0 a 1, ambos inclusive.
supportsAttachments boolean Indica si el cliente de la API que realiza la operación admite archivos adjuntos de eventos. Opcional. El valor predeterminado es False.

Autorización

Esta solicitud requiere autorización con al menos uno de los siguientes alcances:

Alcance
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.events
https://www.googleapis.com/auth/calendar.app.created
https://www.googleapis.com/auth/calendar.events.owned

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 un recurso Events con las siguientes propiedades:

Nombre de la propiedad Valor Descripción Notas
Propiedades obligatorias
end nested object Es la hora de finalización (exclusiva) del evento. En el caso de un evento recurrente, esta es la hora de finalización de la primera instancia.
iCalUID string Es el identificador único del evento, según se define en RFC5545. Se usa para identificar de forma única los eventos en los sistemas de calendario y se debe proporcionar cuando se importan eventos a través del método import.

Ten en cuenta que iCalUID y id no son idénticos y solo se debe proporcionar uno de ellos en el momento de la creación del evento. Una diferencia en su semántica es que, en los eventos recurrentes, todas las ocurrencias de un evento tienen diferentes id, pero todas comparten los mismos iCalUID. Para recuperar un evento con su iCalUID, llama al método events.list con el parámetro iCalUID. Para recuperar un evento con su id, llama al método events.get.

start nested object Es la hora de inicio (inclusive) del evento. En el caso de un evento recurrente, esta es la hora de inicio de la primera instancia.
Propiedades opcionales
anyoneCanAddSelf boolean Indica si cualquier persona puede invitarse al evento (obsoleto). Opcional. El valor predeterminado es False. admite escritura
attachments[].fileUrl string Es el vínculo URL al archivo adjunto.

Para agregar archivos adjuntos de Google Drive, usa el mismo formato que en la propiedad alternateLink del recurso Files en la API de Drive.

Se requiere cuando se agrega un archivo adjunto.

admite escritura
attendees[] list Son los asistentes al evento. Consulta la guía Eventos con asistentes para obtener más información sobre cómo programar eventos con otros usuarios del calendario. Las cuentas de servicio deben usar la delegación de autoridad en todo el dominio para completar la lista de asistentes. admite escritura
attendees[].additionalGuests integer Cantidad de huéspedes adicionales. Opcional. El valor predeterminado es 0. admite escritura
attendees[].comment string Es el comentario de respuesta del asistente. Opcional. admite escritura
attendees[].displayName string Nombre del asistente, si está disponible. Opcional. admite escritura
attendees[].email string Dirección de correo electrónico del asistente, si está disponible. Este campo debe estar presente cuando se agrega un asistente. Debe ser una dirección de correo electrónico válida según el RFC5322.

Se requiere cuando se agrega un asistente.

admite escritura
attendees[].optional boolean Indica si el asistente es opcional. Opcional. El valor predeterminado es False. admite escritura
attendees[].resource boolean Indica si el asistente es un recurso. Solo se puede configurar cuando se agrega el asistente al evento por primera vez. Se ignoran las modificaciones posteriores. Opcional. El valor predeterminado es False. admite escritura
attendees[].responseStatus string Es el estado de respuesta del asistente. Los valores posibles son los siguientes:
  • "needsAction": El asistente no respondió la invitación (se recomienda para eventos nuevos).
  • "declined": El asistente rechazó la invitación.
  • "tentative": El asistente aceptó la invitación de forma provisoria.
  • "accepted": El asistente aceptó la invitación.
admite escritura
attendeesOmitted boolean Indica si es posible que se hayan omitido asistentes de la representación del evento. Cuando se recupera un evento, esto puede deberse a una restricción especificada por el parámetro de consulta maxAttendee. Cuando se actualiza un evento, se puede usar para actualizar solo la respuesta del participante. Opcional. El valor predeterminado es False. admite escritura
colorId string Color del evento. Es un ID que hace referencia a una entrada en la sección event de la definición de colores (consulta el extremo de colores). Opcional. admite escritura
conferenceData nested object Es la información relacionada con la conferencia, como los detalles de una conferencia de Google Meet. Para crear detalles de conferencia nuevos, usa el campo createRequest. Para conservar los cambios, recuerda establecer el parámetro de solicitud conferenceDataVersion en 1 para todas las solicitudes de modificación de eventos. admite escritura
description string Descripción del evento. Puede contener HTML. Opcional. admite escritura
end.date date Fecha, en formato "aaaa-mm-dd", si se trata de un evento de todo el día. admite escritura
end.dateTime datetime Es la hora, como un valor combinado de fecha y hora (con formato según RFC3339). Se requiere una compensación de zona horaria, a menos que se especifique explícitamente una zona horaria en timeZone. admite escritura
end.timeZone string Es la zona horaria en la que se especifica la hora. (Con el formato de un nombre de la base de datos de zonas horarias de IANA, p.ej., "Europe/Zurich"). En el caso de los eventos recurrentes, este campo es obligatorio y especifica la zona horaria en la que se expande la recurrencia. En el caso de eventos únicos, este campo es opcional y muestra una zona horaria personalizada para el inicio y el final del evento. admite escritura
extendedProperties.private object Son las propiedades privadas de la copia del evento que aparece en este calendario. admite escritura
extendedProperties.shared object Son las propiedades que se comparten entre las copias del evento en los calendarios de otros asistentes. admite escritura
focusTimeProperties nested object Son los datos del evento de tiempo dedicado. Se usa si eventType es focusTime. admite escritura
gadget.display string Es el modo de visualización del gadget. Obsoleta. Los valores posibles son los siguientes:
  • "icon": El gadget se muestra junto al título del evento en la vista del calendario.
  • "chip": El gadget se muestra cuando se hace clic en el evento.
admite escritura
gadget.height integer Altura del gadget en píxeles. La altura debe ser un número entero mayor que 0. Opcional. Obsoleta. admite escritura
gadget.preferences object Preferencias. admite escritura
gadget.title string Es el título del gadget. Obsoleta. admite escritura
gadget.type string Es el tipo de gadget. Obsoleta. admite escritura
gadget.width integer Ancho del gadget en píxeles. El ancho debe ser un número entero mayor que 0. Opcional. Obsoleta. admite escritura
guestsCanInviteOthers boolean Indica si los asistentes que no son el organizador pueden invitar a otras personas al evento. Opcional. El valor predeterminado es True. admite escritura
guestsCanModify boolean Indica si los asistentes que no sean el organizador pueden modificar el evento. Opcional. El valor predeterminado es False. admite escritura
guestsCanSeeOtherGuests boolean Indica si los asistentes que no son el organizador pueden ver quiénes son los asistentes al evento. Opcional. El valor predeterminado es True. admite escritura
location string Ubicación geográfica del evento como texto de formato libre. Opcional. admite escritura
organizer object Es el organizador del evento. Si el organizador también es asistente, esto se indica con una entrada separada en attendees con el campo organizer establecido en verdadero. Para cambiar el organizador, usa la operación move. Es de solo lectura, excepto cuando se importa un evento. admite escritura
organizer.displayName string Nombre del organizador, si está disponible. admite escritura
organizer.email string Dirección de correo electrónico del organizador, si está disponible Debe ser una dirección de correo electrónico válida según el RFC5322. admite escritura
originalStartTime.date date Fecha, en formato "aaaa-mm-dd", si se trata de un evento de todo el día. admite escritura
originalStartTime.dateTime datetime Es la hora, como un valor combinado de fecha y hora (con formato según RFC3339). Se requiere una compensación de zona horaria, a menos que se especifique explícitamente una zona horaria en timeZone. admite escritura
originalStartTime.timeZone string Es la zona horaria en la que se especifica la hora. (Con el formato de un nombre de la base de datos de zonas horarias de IANA, p.ej., "Europe/Zurich"). En el caso de los eventos recurrentes, este campo es obligatorio y especifica la zona horaria en la que se expande la recurrencia. En el caso de eventos únicos, este campo es opcional y muestra una zona horaria personalizada para el inicio y el final del evento. admite escritura
outOfOfficeProperties nested object Son los datos del evento fuera de la oficina. Se usa si eventType es outOfOffice. admite escritura
recurrence[] list Es la lista de líneas RRULE, EXRULE, RDATE y EXDATE para un evento recurrente, como se especifica en RFC5545. Ten en cuenta que no se permiten las líneas DTSTART y DTEND en este campo. Las horas de inicio y finalización del evento se especifican en los campos start y end. Este campo se omite para eventos únicos o instancias de eventos recurrentes. admite escritura
reminders.overrides[] list Si el evento no usa los recordatorios predeterminados, se enumeran los recordatorios específicos del evento o, si no se configuraron, se indica que no hay recordatorios establecidos para este evento. La cantidad máxima de recordatorios de reemplazo es 5. admite escritura
reminders.overrides[].method string Es el método que usa este recordatorio. Los valores posibles son los siguientes:
  • "email": Los recordatorios se envían por correo electrónico.
  • "popup": Los recordatorios se envían a través de una ventana emergente de la IU.

Se requiere cuando se agrega un recordatorio.

admite escritura
reminders.overrides[].minutes integer Cantidad de minutos antes del inicio del evento en que se debe activar el recordatorio. Los valores válidos están entre 0 y 40320 (4 semanas en minutos).

Se requiere cuando se agrega un recordatorio.

admite escritura
reminders.useDefault boolean Indica si los recordatorios predeterminados del calendario se aplican al evento. admite escritura
sequence integer Número de secuencia según iCalendar. admite escritura
source.title string Título de la fuente, por ejemplo, el título de una página web o el asunto de un correo electrónico. admite escritura
source.url string Es la URL de la fuente que apunta a un recurso. El esquema de URL debe ser HTTP o HTTPS. admite escritura
start.date date Fecha, en formato "aaaa-mm-dd", si se trata de un evento de todo el día. admite escritura
start.dateTime datetime Es la hora, como un valor combinado de fecha y hora (con formato según RFC3339). Se requiere una compensación de zona horaria, a menos que se especifique explícitamente una zona horaria en timeZone. admite escritura
start.timeZone string Es la zona horaria en la que se especifica la hora. (Con el formato de un nombre de la base de datos de zonas horarias de IANA, p.ej., "Europe/Zurich"). En el caso de los eventos recurrentes, este campo es obligatorio y especifica la zona horaria en la que se expande la recurrencia. En el caso de eventos únicos, este campo es opcional y muestra una zona horaria personalizada para el inicio y el final del evento. admite escritura
status string Es el estado del evento. Opcional. Los valores posibles son los siguientes:
  • "confirmed": Se confirmó el evento. Este es el estado predeterminado.
  • "tentative": El evento se confirmó de forma tentativa.
  • "cancelled": Se canceló (eliminó) el evento. El método list solo devuelve los eventos cancelados en la sincronización incremental (cuando se especifican syncToken o updatedMin) o si la marca showDeleted se establece en true. El método get siempre los devuelve.

    El estado cancelado representa dos estados diferentes según el tipo de evento:

    1. Las excepciones canceladas de un evento recurrente no cancelado indican que esta instancia ya no se debe presentar al usuario. Los clientes deben almacenar estos eventos durante el ciclo de vida del evento recurrente principal.

      Solo se garantiza que las excepciones canceladas tengan valores para los campos id, recurringEventId y originalStartTime. Es posible que los otros campos estén vacíos.

    2. Todos los demás eventos cancelados representan eventos borrados. Los clientes deben quitar las copias sincronizadas de forma local. Estos eventos cancelados desaparecerán con el tiempo, por lo que no debes confiar en que estarán disponibles de forma indefinida.

      Solo se garantiza que los eventos borrados tengan el campo id completado.

    En el calendario del organizador, los eventos cancelados siguen exponiendo los detalles del evento (resumen, ubicación, etcétera) para que se puedan restablecer (deshacer la eliminación). Del mismo modo, los eventos a los que se invitó al usuario y que quitó manualmente siguen proporcionando detalles. Sin embargo, las solicitudes de sincronización incrementales con showDeleted establecido como falso no devolverán estos detalles.

    Si un evento cambia de organizador (por ejemplo, a través de la operación move) y el organizador original no está en la lista de asistentes, quedará un evento cancelado en el que solo se garantiza que se completará el campo id.

admite escritura
summary string Corresponde al título del evento. admite escritura
transparency string Indica si el evento bloquea tiempo en el calendario. Opcional. Los valores posibles son los siguientes:
  • "opaque": Es el valor predeterminado. El evento bloquea tiempo en el calendario. Esto equivale a configurar Mostrarme como en Ocupado en la IU del Calendario.
  • "transparent": El evento no bloquea tiempo en el calendario. Esto equivale a configurar Mostrarme como en Disponible en la IU del Calendario.
admite escritura
visibility string Visibilidad del evento. Opcional. Los valores posibles son los siguientes:
  • "default": Usa la visibilidad predeterminada para los eventos del calendario. Este es el valor predeterminado.
  • "public": El evento es público y todos los lectores del calendario pueden ver sus detalles.
  • "private": El evento es privado y solo los asistentes pueden ver sus detalles.
  • "confidential": El evento es privado. Este valor se proporciona por motivos de compatibilidad.
admite escritura

Respuesta

Si la respuesta es correcta, este método devuelve un recurso Events en el cuerpo de la respuesta.

Pruébalo

Usa el Explorador de APIs que se encuentra a continuación para llamar a este método en datos en vivo y ver la respuesta.