CalDAV è un'estensione di WebDAV che fornisce uno standard per l'accesso dei client le informazioni del calendario su un server remoto.
Google fornisce un'interfaccia CalDAV che puoi utilizzare per visualizzare e gestire i calendari utilizzando il protocollo CalDAV.
Specifiche
Per ciascuna delle specifiche pertinenti, il supporto CalDAV di Google è il seguente:
- rfc4918: Estensioni HTTP per la creazione distribuita e il controllo delle versioni Web
(WebDAV)
- Supporta i metodi HTTP
GET
,PUT
,HEAD
,DELETE
,POST
,OPTIONS
,PROPFIND
ePROPPATCH
. - Non supporta i metodi HTTP
LOCK
,UNLOCK
,COPY
,MOVE
oMKCOL
o l'intestazioneIf*
(tranneIf-Match
). - Non supporta proprietà WebDAV arbitrarie (definite dall'utente).
- Non supporta il controllo accesso WebDAV (rfc3744).
- Supporta i metodi HTTP
- rfc4791: Estensioni di Calendar per WebDAV (CalDAV)
- Supporta il metodo HTTP
REPORT
. Tutti i report tranne query sullo stato disponibile vengono implementate. - Non supporta il metodo HTTP
MKCALENDAR
. - Non supporta l'azione
AUDIO
.
- Supporta il metodo HTTP
- rfc5545: iCalendar
- I dati esposti nell'interfaccia CalDAV vengono formattati in base nella specifica iCalendar.
- Al momento non sono supportati i dati
VTODO
oVJOURNAL
. - Non supporta l'estensione Apple iCal® per consentire le proprietà degli URL impostabili dall'utente.
- rfc6578: Sincronizzazione delle raccolte per WebDAV
- Le applicazioni client devono passare a questa modalità operativa dopo la sincronizzazione iniziale.
- rfc6638: programmazione delle estensioni per CalDAV
- Supporta una semplice "Posta in arrivo", che è sempre vuoto.
- Gli inviti che ricevi vengono consegnati automaticamente nei tuoi "eventi" anziché essere inseriti nella "Posta in arrivo".
- Non supporta la ricerca di informazioni sulla disponibilità.
- caldav-ctag-02: Tag dell'entità della raccolta del calendario (CTag) in CalDAV
- Il calendario
ctag
è come una risorsaetag
; cambia quando succede nel calendario sono cambiate. Ciò consente all'applicazione client di determinare rapidamente che non è necessario sincronizzare eventi.
- Il calendario
- calendar-proxy: funzionalità proxy utente Calendar in CalDAV
- Per migliorare le prestazioni della sincronizzazione del calendario dai dispositivi iOS,
non supportano la delega, utilizzando l'
calendar-proxy-read-for
ocalendar-proxy-write-for
proprietà con uno user agent iOS non riuscirà.
- Per migliorare le prestazioni della sincronizzazione del calendario dai dispositivi iOS,
non supportano la delega, utilizzando l'
Non abbiamo ancora fornito un'implementazione completa di tutti i specifiche. Tuttavia, per molti client, come l'app Calendario di Apple, il protocollo CalDAV dovrebbe interoperare correttamente.
Nota: per proteggere l'account e prevenire comportamenti illeciti, Google potrebbe impostare cookie su applicazioni client che accedono ai dati tramite CalDAV.
Creazione dell'ID client in corso...
Per utilizzare l'API CalDAV è necessario avere Un Account Google. Se hai già un account utilizzabile, non devi fare altro.
Prima di poter inviare richieste all'API CalDAV, devi registrarti il tuo client con la console API di Google creando un progetto.
Vai alla console dell'API di Google. Fai clic su Crea progetto. inserisci un nome e fai clic su Crea.
Il passaggio successivo prevede l'attivazione dell'API CalDAV.Per abilitare un'API per il tuo progetto, segui questi passaggi:
- Apri la libreria API nella console API di Google. Se richiesto, seleziona progetto o crearne uno nuovo. Nella Libreria API sono elencate tutte le opzioni disponibili API raggruppate per famiglia di prodotti e popolarità.
- Se l'API che vuoi abilitare non è visibile nell'elenco, utilizza la ricerca per a trovarlo.
- Seleziona l'API che vuoi abilitare e fai clic su Abilita. .
- Se richiesto, abilita la fatturazione.
- Se richiesto, accetta i Termini di servizio dell'API.
Per trovare l'ID client e il client secret del tuo progetto, segui questi passaggi:
- Seleziona un account OAuth 2.0 esistente o apri la pagina Credenziali.
- Se non l'hai ancora fatto, crea il protocollo OAuth 2.0 per il tuo progetto credenziali facendo clic su Crea credenziali > ID client OAuth e fornendo le informazioni necessarie per creare le credenziali.
- Cerca l'ID client nella sezione ID client OAuth 2.0. Per maggiori dettagli, fai clic sull'ID client.
Connessione al server CalDAV di Google
Per utilizzare l'interfaccia CalDAV, un programma client si connette inizialmente
server di Google Calendar in uno dei due punti di partenza. In entrambi i casi, la connessione
deve essere effettuato tramite HTTPS e deve utilizzare OAuth 2.0
di autenticazione. Il server CalDAV rifiuterà l'autenticazione della richiesta
a meno che non arrivi tramite HTTPS con l'autenticazione OAuth 2.0 di un Account Google.
Il tentativo di connessione tramite HTTP o l'utilizzo dell'autenticazione di base genera una richiesta
Codice di stato 401 Unauthorized
.
Se il programma client (come l'app Calendario di Apple) richiede un raccolta di entità come punto di partenza, l'URI a cui connetterti è:
https://apidata.googleusercontent.com/caldav/v2/calid/user
Dove calid
deve essere sostituito dal
"ID calendario" del calendario a cui accedere. È possibile trovarlo tramite
l'interfaccia web di Google Calendar nel seguente modo: nel menu a discesa accanto
nome calendario, seleziona Impostazioni calendario. Nella pagina visualizzata
l'ID calendario viene visualizzato in una sezione con l'etichetta Calendario
Indirizzo. L'ID del calendario principale di un utente è lo stesso del
all'indirizzo email di quell'utente.
Se un programma per clienti (come Mozilla Sunbird) richiede un calendario come punto di partenza, l'URI a cui connetterti è:
https://apidata.googleusercontent.com/caldav/v2/calid/events
Il vecchio endpoint https://www.google.com/calendar/dav è deprecato e non più supportato; lo usi a tuo rischio e pericolo. Ti consigliamo di passare al nuovo formato dell'endpoint descritto sopra.
iCal® è un marchio di Apple Inc.