B12 permet aux utilisateurs de synchroniser leur calendrier B12 vers leur calendrier personnel Microsoft Outlook ou Google Calendar.
Pour ce faire, ils leur suffit d'accéder à leur profil à partir de B12, de cliquer sur le bouton de synchronisation de leur choix et de suivre les instructions.
B12 va ensuite se charger de créer, de mettre à jour et de supprimer les événements d'apprentissage B12 de sorte à refléter les programmes de l'utilisateur dans B12.
Calendrier Outlook
Un fois l'accès accordé, B12 emploie le Graph API de Microsoft pour communiquer avec le calendrier d'un utilisateur. Les appels possibles sont les suivants :
-
POST https://graph.microsoft.com/v1.0/me/events
https://learn.microsoft.com/en-us/graph/api/user-post-events -
PATCH https://graph.microsoft.com/v1.0/me/events/:eventIdhttps://learn.microsoft.com/en-us/graph/api/event-update -
DELETE https://graph.microsoft.com/v1.0/me/events/:eventIdhttps://learn.microsoft.com/en-us/graph/api/event-delete
Il faudra qu'un administrateur de votre tenant autorise l'application B12: https://learn.microsoft.com/en-us/azure/active-directory/develop/application-consent-experience#user-is-directed-to-the-admin-consent-flow
Calendrier Google
Un fois l'accès accordé, B12 emploie l'API de Google pour communiquer avec le calendrier d'un utilisateur. Les appels possibles sont les suivants :
-
POST https://www.googleapis.com/calendar/v3/calendars/calendarId/events
https://developers.google.com/calendar/api/v3/reference/events/insert -
PATCH https://www.googleapis.com/calendar/v3/calendars/calendarId/events
https://developers.google.com/calendar/api/v3/reference/events/patch -
DELETE https://www.googleapis.com/calendar/v3/calendars/calendarId/events
https://developers.google.com/calendar/api/v3/reference/events/delete
Données
- Un access_token et un refresh_token (encrypté au repos avec AES 256) afin d'effectuer les appels d'API.
- Des ids opaque de référence pour mettre à jour les évènements d'un calendrier
Et finalement, toutes les opérations sont effectuées selon le protocole HTTPS et encryptées avec TLS 1.3.