CalDAV es una extensión de WebDAV que proporciona un estándar para que los clientes accedan información del calendario en un servidor remoto.
Google proporciona una interfaz de CalDAV que puedes usar para ver y administrar calendarios con el protocolo CalDAV.
Especificaciones
Para cada una de las especificaciones relevantes, la asistencia de CalDAV de Google es la siguiente:
- rfc4918: Extensiones HTTP para la creación y el control de versiones distribuidos en la Web
(WebDAV)
- Admite los métodos HTTP
GET
,PUT
,HEAD
,DELETE
,POST
,OPTIONS
,PROPFIND
yPROPPATCH
. - No es compatible con los métodos HTTP
LOCK
,UNLOCK
,COPY
,MOVE
niMKCOL
o el encabezadoIf*
(exceptoIf-Match
) - No admite propiedades de WebDAV arbitrarias (definidas por el usuario).
- No es compatible con el control de acceso WebDAV (rfc3744).
- Admite los métodos HTTP
- rfc4791: Extensiones de calendario para WebDAV (CalDAV)
- Admite el método HTTP
REPORT
. Todos los informes, excepto la consulta de disponibilidad los recursos de Google Cloud. - No es compatible con el método HTTP
MKCALENDAR
. - No admite la acción
AUDIO
.
- Admite el método HTTP
- rfc5545: iCalendario
- Los datos expuestos en la interfaz de CalDAV tienen un formato según el Especificación de iCalendario.
- Actualmente, no es compatible con datos de
VTODO
ni deVJOURNAL
. - No es compatible con la extensión Apple iCal® para permitir propiedades de URL que el usuario pueda configurar.
- rfc6578: Sincronización de colecciones para WebDAV
- Las aplicaciones cliente deben cambiar a este modo de funcionamiento después del sincronización inicial.
- rfc6638: Cómo programar extensiones para CalDAV
- Admite una bandeja de entrada trivial, que siempre está vacío.
- Las invitaciones que recibas se incluirán automáticamente en tus “eventos”. en lugar de colocarlos en "Recibidos".
- No admite la búsqueda de disponible-ocupado.
- caldav-ctag-02: Etiqueta de entidad de colección de calendario (CTag) en CalDAV
- El calendario
ctag
es como un recursoetag
; cambia cuando algo en el calendario. Esto permite que la aplicación cliente determinar rápidamente que no necesita sincronizar ningún cambio eventos.
- El calendario
- calendar-proxy: Funcionalidad del proxy de usuario del calendario en CalDAV
- Para mejorar el rendimiento de la sincronización del calendario desde dispositivos iOS, que
no admiten la delegación, con los
calendar-proxy-read-for
Fallarán las propiedadescalendar-proxy-write-for
con un UserAgent de iOS.
- Para mejorar el rendimiento de la sincronización del calendario desde dispositivos iOS, que
no admiten la delegación, con los
Aún no proporcionamos una implementación completa de todos los y las especificaciones del servicio. Sin embargo, para muchos clientes, como la aplicación Calendario de Apple el protocolo CalDAV debe interoperar correctamente.
Nota: Para garantizar la seguridad de la cuenta y evitar abusos, Google podría establecer cookies en aplicaciones cliente que acceden a los datos a través de CalDAV.
Cómo crear tu ID de cliente
Para usar la API de CalDAV, debes tener Una Cuenta de Google Si ya tienes una cuenta que puedes usar, no necesitas hacer nada más.
Antes de poder enviar solicitudes a la API de CalDAV, debes registrarte tu cliente con la Consola de APIs de Google creando un proyecto.
Ve a la Consola de API de Google. Haz clic en Crear proyecto. Ingresa un nombre y haz clic en Crear.
El siguiente paso es activar la API de CalDAV.Si deseas habilitar una API para tu proyecto, haz lo siguiente:
- Abre la Biblioteca de APIs en la Consola de APIs de Google. Si se te solicita, selecciona una un proyecto nuevo o crear uno nuevo. La Biblioteca de APIs enumera todas las opciones APIs, agrupadas por familia de productos y popularidad.
- Si la API que quieres habilitar no está en la lista, usa la búsqueda para encontrarla.
- Selecciona la API que deseas habilitar y, luego, haz clic en el botón Habilitar. .
- Si se te solicita, habilita la facturación.
- Si se te solicita, acepta las Condiciones del Servicio de la API.
Para encontrar el ID de cliente y el secreto de cliente de tu proyecto, haz lo siguiente:
- Seleccionar una cuenta de OAuth 2.0 existente credencial o abre la página Credenciales.
- Si aún no lo hiciste, crea el OAuth 2.0 para tu proyecto. credenciales haciendo clic en Crear credenciales > ID de cliente de OAuth proporcionando la información necesaria para crear las credenciales.
- Busca el ID de cliente en la sección ID de cliente de OAuth 2.0. Para obtener más información, haz clic en el ID de cliente.
Conéctate al servidor de CalDAV de Google
Para usar la interfaz de CalDAV, un programa cliente se conecta inicialmente con el
en uno de los dos puntos de partida. En cualquier caso, la conexión
debe realizarse a través de HTTPS y debe usar OAuth 2.0.
de autenticación administrado. El servidor CalDAV rechazará la solicitud.
a menos que llegue a través de HTTPS con la autenticación OAuth 2.0 de una Cuenta de Google.
Si intentas conectarte mediante HTTP o usar una autenticación básica, se generará una solicitud
Código de estado 401 Unauthorized
.
Si el programa cliente (como la aplicación Calendario de Apple) requiere una colección principal como punto de partida, el URI al que te conectarás es el siguiente:
https://apidata.googleusercontent.com/caldav/v2/calid/user
Donde calid
debe reemplazarse por el
"ID de calendario" del calendario al que se quiere acceder. Puedes encontrarla a través de la
de la siguiente interfaz web de Calendario de Google:
nombre del calendario, selecciona Configuración del calendario. En la página de resultados
el ID del calendario se muestra en una sección etiquetada como Calendario
Dirección. El ID del calendario del calendario principal de un usuario es el mismo que
la dirección de correo electrónico de ese usuario.
Si un programa cliente (como Mozilla Sunbird) requiere un de calendario como punto de partida, el URI al que conectarse es el siguiente:
https://apidata.googleusercontent.com/caldav/v2/calid/events
El extremo anterior https://www.google.com/calendar/dav es obsoleto y ya no es compatible; utilizarlo bajo tu propia responsabilidad. Te recomendamos realizar la transición al nuevo formato de extremo descrito anteriormente.
iCal® es una marca de Apple Inc.