Guía de CalPair · Microsoft 365

¿Qué calendarios se pueden sincronizar y con qué permisos?

Elige los permisos de la app. Después verás qué calendarios puede leer, modificar y sincronizar, y cómo detecta los cambios.

CalPair solicita actualmente Calendars.ReadWrite para tus propios calendarios. La selección de abajo parte de ahí.

1¿Qué scopes ha concedido el usuario a la app?

Los cuatro son permisos delegados: la app actúa a través del inicio de sesión personal de un usuario. “Shared” amplía los calendarios a los que puede acceder.

ReadWrite ya incluye la lectura. Una marca significa que el permiso está realmente concedido en el token de acceso, no solo configurado en Microsoft Entra.

Otro calendario del par de sincronización:

El otro calendario tiene su propia conexión y sus propios permisos. Estas dos marcas representan el acceso efectivo de la app.

2Compara los tres tipos de calendario

✓ Posible — requisitos cumplidos× Bloqueado — falta scope o acceso? Revisar — requiere validación explícita
Caso especial: un calendario personalizado compartido visible en el propio buzón del usuario. Microsoft documenta que a algunos calendarios personalizados compartidos se puede acceder con los permisos estándar Calendars.Read / ReadWrite a través del buzón del usuario. La columna de calendario compartido/delegado modela el acceso directo al buzón del propietario. El caso de la copia local debe comprobarse por separado; no es una solución general para buzones compartidos.

Este explorador muestra las capacidades de la API de Microsoft. No afirma que una app de sincronización concreta haya implementado cada vía permitida. El acceso a disponibilidad (libre/ocupado) no basta para copiar los detalles de las citas.

3Cómo se combinan permisos y actualizaciones

Scope + acceso del usuario = permiso efectivo

La app necesita el scope correcto. Para el calendario de otra persona o de un buzón compartido, el usuario necesita además una concesión sobre ese calendario. Un scope nunca otorga pertenencia a un buzón.

Push avisa a la app de que “algo ha cambiado”

Después la app procesa el cambio. Para calendarios compartidos/delegados, este modelo de inicio de sesión personal no puede usar push. El acceso solo de aplicación es otro modelo, aprobado por un administrador.

Polling comprueba cambios periódicamente

Es posible siempre que la app pueda leer el calendario. Las actualizaciones pueden llegar con retraso. La gestión fiable de eliminaciones, series y conflictos depende de la app de sincronización.

Detalles para TI: acceso solo de aplicación, citas privadas y fuentes
  • Otros scopes de inicio de sesión de CalPair: User.Read identifica al usuario que ha iniciado sesión; offline_access mantiene la conexión utilizable entre inicios de sesión. Ninguno de los dos da acceso a calendarios.
  • Push para calendarios propios: la documentación de suscripciones de Microsoft indica Calendars.Read como el permiso mínimo. Calendars.ReadWrite también incluye lectura. Un token solo con scopes Shared sigue leyendo los calendarios propios, pero conviene validar que se aceptan las suscripciones; este explorador marca esa combinación como “Revisar”.
  • Push para calendarios compartidos/delegados: requiere el permiso de aplicación correspondiente, como Calendars.Read, con consentimiento del administrador y un ámbito adecuado de acceso al buzón. Los permisos delegados Shared no admiten suscripciones a estas carpetas. No se habilita marcando más scopes delegados arriba.
  • Acceso a buzones compartidos: el acceso total suele incluir su calendario. Una concesión específica del calendario puede permitir solo lectura o edición. No hace falta iniciar sesión directamente en el buzón compartido.
  • Citas privadas: los detalles pueden ocultarse según la concesión de calendario del usuario. “Enviar como” / “Enviar en nombre de”, las invitaciones a reuniones y la organización de reuniones son independientes de copiar citas.
  • Polling no es lo mismo que Delta: la lectura permite comprobaciones periódicas. La disponibilidad de una vía Delta incremental y la detección segura de eliminaciones deben validarse para la vía de acceso concreta.
  • Bidireccional: ambos calendarios deben permitir lectura y escritura a través de sus respectivas conexiones. Las actualizaciones y eliminaciones solo se propagan según las reglas elegidas en la app de sincronización.

Referencia de scopes de Microsoft · Acceso API a calendarios compartidos/delegados y excepción de copia local · Permisos y límites de las notificaciones push · Acceso a buzones compartidos