CalDAV adalah ekstensi WebDAV yang menyediakan standar bagi klien untuk mengakses informasi kalender di server jarak jauh.
Google menyediakan antarmuka CalDAV yang dapat Anda gunakan untuk melihat dan mengelola kalender menggunakan protokol CalDAV.
Spesifikasi
Untuk setiap spesifikasi yang relevan, dukungan CalDAV Google adalah sebagai berikut:
- RFC4918: Ekstensi HTTP untuk Pembuatan dan Pembuatan Versi Terdistribusi Web (WebDAV)
- Mendukung metode HTTP
GET
,PUT
,HEAD
,DELETE
,POST
,OPTIONS
,PROPFIND
, danPROPPATCH
. - Tidak mendukung metode HTTP
LOCK
,UNLOCK
,COPY
,MOVE
, atauMKCOL
, atau headerIf*
(kecualiIf-Match
). - Tidak mendukung properti WebDAV arbitrer (ditentukan pengguna).
- Tidak mendukung Kontrol Akses WebDAV (RFC3744).
- Mendukung metode HTTP
- RFC4791: Ekstensi Kalender ke WebDAV (CalDAV)
- Mendukung metode HTTP
REPORT
. Semua laporan kecuali kueri senggang-sibuk diterapkan. - Tidak mendukung metode HTTP
MKCALENDAR
. - Tidak mendukung tindakan
AUDIO
.
- Mendukung metode HTTP
- RFC5545: iCalendar
- Data yang diekspos di antarmuka CalDAV diformat sesuai dengan spesifikasi iCalendar.
- Saat ini tidak mendukung data
VTODO
atauVJOURNAL
. - Tidak mendukung ekstensi Apple iCal® untuk mengizinkan properti URL yang dapat disetel pengguna.
- RFC6578: Sinkronisasi Koleksi untuk WebDAV
- Aplikasi klien harus beralih ke mode operasi ini setelah sinkronisasi awal.
- RFC6638: Menjadwalkan Ekstensi ke CalDAV
- Mendukung "kotak masuk" sederhana yang selalu kosong.
- Undangan yang Anda terima akan otomatis dikirim ke koleksi "acara" alih-alih ditempatkan di "kotak masuk" Anda.
- Tidak mendukung pencarian senggang-sibuk.
- caldav-ctag-02: Tag Entitas Koleksi Kalender (CTag) di CalDAV
- Kalender
ctag
mirip sepertietag
fasilitas; kalender akan berubah jika ada sesuatu dalam kalender yang berubah. Hal ini memungkinkan aplikasi klien dengan cepat menentukan bahwa aplikasi tidak perlu menyinkronkan peristiwa yang diubah.
- Kalender
- calendar-proxy: Fungsi Proxy Pengguna Kalender di CalDAV
- Untuk meningkatkan performa sinkronisasi kalender dari perangkat iOS yang tidak mendukung delegasi, penggunaan properti
calendar-proxy-read-for
ataucalendar-proxy-write-for
dengan UserAgent iOS akan gagal.
- Untuk meningkatkan performa sinkronisasi kalender dari perangkat iOS yang tidak mendukung delegasi, penggunaan properti
Kami belum menyediakan implementasi lengkap dari semua spesifikasi yang relevan. Namun, bagi banyak klien seperti Apple iCal, protokol CalDAV harus beroperasi dengan benar.
Catatan: Untuk keamanan akun dan mencegah penyalahgunaan, Google mungkin menetapkan cookie pada aplikasi klien yang mengakses data melalui CalDAV.
Membuat client ID
Untuk menggunakan CalDAV API, Anda harus memiliki Akun Google. Jika sudah memiliki akun yang dapat digunakan, artinya Anda sudah siap.
Sebelum dapat mengirim permintaan ke CalDAV API, Anda harus mendaftarkan klien Anda ke Konsol API Google dengan membuat project.
Buka Konsol Google API. Klik Buat project, masukkan nama, dan klik Buat.
Langkah berikutnya adalah mengaktifkan CalDAV API.Untuk mengaktifkan API untuk project Anda, lakukan hal berikut:
- Buka Library API di Konsol API Google. Jika diminta, pilih project atau buat project baru. Library API menampilkan daftar semua API yang tersedia, yang dikelompokkan berdasarkan kelompok produk dan popularitas.
- Jika API yang ingin Anda aktifkan tidak terlihat dalam daftar, gunakan penelusuran untuk mencarinya.
- Pilih API yang ingin Anda aktifkan, lalu klik tombol Enable.
- Jika diminta, aktifkan penagihan.
- Jika diminta, terima Persyaratan Layanan API.
Untuk menemukan client ID dan rahasia klien project Anda, lakukan hal berikut:
- Pilih kredensial OAuth 2.0 yang ada atau buka halaman Kredensial.
- Jika belum melakukannya, buat kredensial OAuth 2.0 project Anda dengan mengklik Buat kredensial > client ID OAuth, dan berikan informasi yang diperlukan untuk membuat kredensial.
- Cari Client ID di bagian Client ID OAuth 2.0. Untuk mengetahui detailnya, klik client ID.
Menghubungkan ke server CalDAV Google
Untuk menggunakan antarmuka CalDAV, program klien awalnya terhubung dengan
server kalender di salah satu dari dua titik awal. Dalam kedua kasus tersebut, koneksi
harus dilakukan melalui HTTPS dan harus menggunakan skema autentikasi
OAuth 2.0. Server CalDAV akan menolak mengautentikasi permintaan
kecuali jika diterima melalui HTTPS dengan autentikasi OAuth 2.0 di Akun Google.
Mencoba terhubung melalui HTTP atau menggunakan Autentikasi Dasar akan menghasilkan kode status 401 Unauthorized
HTTP.
Jika program klien (seperti Apple iCal) memerlukan koleksi utama sebagai titik awal, URI yang akan dihubungkan adalah:
https://apidata.googleusercontent.com/caldav/v2/calid/user
Dalam hal ini, calid
harus diganti dengan "ID kalender" kalender yang akan diakses. Setelan ini dapat ditemukan melalui antarmuka web Google Kalender sebagai berikut: di menu drop-down di samping nama kalender, pilih Setelan Kalender. Di halaman yang dihasilkan, ID kalender ditampilkan di bagian berlabel Alamat Kalender. ID kalender untuk kalender utama pengguna sama dengan alamat email pengguna tersebut.
Jika program klien (seperti Mozilla Sunbird) memerlukan koleksi kalender sebagai titik awal, URI yang akan dihubungkan adalah:
https://apidata.googleusercontent.com/caldav/v2/calid/events
Endpoint lama https://www.google.com/calendar/dav tidak digunakan lagi dan tidak didukung lagi; gunakan risikonya sendiri. Sebaiknya Anda beralih ke format endpoint baru yang dijelaskan di atas.
iCal adalah merek dagang Apple Inc.