Memperbarui acara. Metode ini tidak mendukung semantik patch dan selalu memperbarui seluruh resource peristiwa. Untuk melakukan update parsial, lakukan get
yang diikuti dengan update
menggunakan etag untuk memastikan atomicity.
Coba sekarang atau lihat contohnya.
Permintaan
Permintaan HTTP
PUT https://www.googleapis.com/calendar/v3/calendars/calendarId/events/eventId
Parameter
Nama parameter | Nilai | Deskripsi |
---|---|---|
Parameter jalur | ||
calendarId |
string |
ID kalender. Untuk mengambil ID kalender, panggil metode calendarList.list. Jika Anda ingin mengakses kalender utama pengguna yang saat ini login, gunakan "primary " kata kunci.
|
eventId |
string |
ID peristiwa. |
Parameter kueri opsional | ||
alwaysIncludeEmail |
boolean |
Tidak digunakan lagi dan diabaikan. Nilai akan selalu ditampilkan di kolom email untuk penyelenggara, pembuat, dan peserta, meskipun tidak ada alamat email asli yang tersedia (yaitu, nilai yang dibuat dan tidak berfungsi akan diberikan).
|
conferenceDataVersion |
integer |
Nomor versi data konferensi yang didukung oleh klien API. Versi 0 mengasumsikan tidak ada dukungan data konferensi dan mengabaikan data konferensi dalam isi peristiwa. Versi 1 memungkinkan dukungan untuk penyalinan ConferenceData serta untuk membuat konferensi baru menggunakan kolom createRequest dari konferensiData. Defaultnya adalah 0.
Nilai yang dapat diterima adalah 0 hingga 1 , inklusif.
|
maxAttendees |
integer |
Jumlah maksimum peserta yang akan disertakan dalam respons. Jika ada lebih dari jumlah tamu yang ditentukan, hanya peserta yang akan ditampilkan. Opsional. |
sendNotifications |
boolean |
Tidak digunakan lagi. Sebagai gantinya, gunakan sendUpdates. Apakah akan mengirim notifikasi tentang info terbaru acara (misalnya, perubahan deskripsi, dll.). Perlu diperhatikan bahwa beberapa email mungkin tetap dikirim meskipun Anda menetapkan nilainya ke false . Defaultnya adalah false .
|
sendUpdates |
string |
Tamu yang harus menerima notifikasi tentang pembaruan acara (misalnya, perubahan judul, dll.).
Nilai yang dapat diterima:
|
supportsAttachments |
boolean |
Apakah operasi yang menjalankan klien API mendukung lampiran peristiwa. Opsional. Defaultnya adalah Salah. |
Otorisasi
Permintaan ini memerlukan otorisasi dengan setidaknya salah satu cakupan berikut:
Cakupan |
---|
https://www.googleapis.com/auth/calendar |
https://www.googleapis.com/auth/calendar.events |
Untuk mengetahui informasi selengkapnya, lihat halaman autentikasi dan otorisasi.
Isi permintaan
Dalam isi permintaan, berikan Resource peristiwa dengan properti berikut:
Nama properti | Nilai | Deskripsi | Catatan |
---|---|---|---|
Properti yang Diperlukan | |||
end |
nested object |
Waktu berakhir (eksklusif) acara. Untuk acara berulang, ini adalah waktu berakhirnya acara yang pertama. | |
start |
nested object |
Waktu mulai (inklusif) acara. Untuk acara rutin, ini adalah waktu mulai dari kejadian pertama. | |
Properti Opsional | |||
anyoneCanAddSelf |
boolean |
Apakah siapa saja dapat mengundang diri mereka ke acara (tidak digunakan lagi). Opsional. Defaultnya adalah Salah. | dapat ditulis |
attachments[].fileUrl |
string |
Link URL ke lampiran. Untuk menambahkan lampiran file Google Drive, gunakan format yang sama seperti di properti Wajib diisi saat menambahkan lampiran. |
dapat ditulis |
attendees[] |
list |
Para peserta acara. Lihat panduan Acara dengan tamu untuk informasi selengkapnya tentang cara menjadwalkan acara dengan pengguna kalender lainnya. Akun layanan harus menggunakan delegasi tingkat domain untuk mengisi daftar tamu. | dapat ditulis |
attendees[].additionalGuests |
integer |
Jumlah tamu tambahan. Opsional. Defaultnya adalah 0. | dapat ditulis |
attendees[].comment |
string |
Komentar respons peserta. Opsional. | dapat ditulis |
attendees[].displayName |
string |
Nama peserta, jika ada. Opsional. | dapat ditulis |
attendees[].email |
string |
Alamat email peserta, jika tersedia. Kolom ini harus ada saat menambahkan tamu. Alamat email tersebut harus valid sesuai dengan RFC5322. Wajib diisi saat menambahkan tamu. |
dapat ditulis |
attendees[].optional |
boolean |
Apakah ini tamu opsional. Opsional. Defaultnya adalah Salah. | dapat ditulis |
attendees[].resource |
boolean |
Apakah peserta adalah sumber daya. Hanya dapat ditetapkan saat tamu ditambahkan ke acara untuk pertama kalinya. Perubahan berikutnya akan diabaikan. Opsional. Defaultnya adalah Salah. | dapat ditulis |
attendees[].responseStatus |
string |
Status respons tamu. Kemungkinan nilainya adalah:
|
dapat ditulis |
attendeesOmitted |
boolean |
Apakah peserta mungkin telah dihilangkan dari representasi acara. Saat mengambil peristiwa, hal ini mungkin disebabkan oleh batasan yang ditentukan oleh parameter kueri maxAttendee . Saat memperbarui acara, tindakan ini dapat digunakan untuk memperbarui tanggapan peserta saja. Opsional. Defaultnya adalah Salah. |
dapat ditulis |
colorId |
string |
Warna peristiwa. Ini adalah ID yang merujuk ke entri di bagian event dari definisi warna (lihat endpoint warna). Opsional. |
dapat ditulis |
conferenceData |
nested object |
Informasi terkait konferensi, seperti detail konferensi Google Meet. Untuk membuat detail konferensi baru, gunakan kolom createRequest . Untuk mempertahankan perubahan Anda, jangan lupa menetapkan parameter permintaan conferenceDataVersion ke 1 untuk semua permintaan perubahan peristiwa. |
dapat ditulis |
description |
string |
Deskripsi acara. Dapat berisi HTML. Opsional. | dapat ditulis |
end.date |
date |
Tanggal, dalam format "yyyy-mm-dd", jika ini adalah peristiwa sepanjang hari. | dapat ditulis |
end.dateTime |
datetime |
Waktu, sebagai nilai tanggal-waktu gabungan (diformat sesuai dengan RFC3339). Offset zona waktu diperlukan kecuali jika zona waktu ditentukan secara eksplisit di timeZone . |
dapat ditulis |
end.timeZone |
string |
Zona waktu yang digunakan untuk menentukan waktu. (Diformat sebagai nama Database Zona Waktu IANA, misalnya "Eropa/Zurich".) Untuk acara berulang, kolom ini wajib diisi dan menentukan zona waktu tempat pengulangan diperluas. Untuk satu peristiwa, kolom ini bersifat opsional dan menunjukkan zona waktu kustom untuk awal/akhir acara. | dapat ditulis |
extendedProperties.private |
object |
Properti yang bersifat pribadi untuk salinan acara yang muncul di kalender ini. | dapat ditulis |
extendedProperties.shared |
object |
Properti yang digunakan bersama di antara salinan acara di tamu lain kalender. | dapat ditulis |
focusTimeProperties |
nested object |
Data peristiwa Waktu Fokus. Digunakan jika eventType adalah focusTime . |
dapat ditulis |
gadget.display |
string |
Mode tampilan gadget. Tidak digunakan lagi. Kemungkinan nilainya adalah:
|
dapat ditulis |
gadget.height |
integer |
Tinggi gadget dalam piksel. Tinggi harus berupa bilangan bulat yang lebih besar dari 0. Opsional. Tidak digunakan lagi. | dapat ditulis |
gadget.iconLink |
string |
URL ikon gadget. Skema URL harus berupa HTTPS. Tidak digunakan lagi. | dapat ditulis |
gadget.link |
string |
URL gadget. Skema URL harus berupa HTTPS. Tidak digunakan lagi. | dapat ditulis |
gadget.preferences |
object |
Preferensi. | dapat ditulis |
gadget.title |
string |
Judul gadget. Tidak digunakan lagi. | dapat ditulis |
gadget.type |
string |
Jenis gadget. Tidak digunakan lagi. | dapat ditulis |
gadget.width |
integer |
Lebar gadget dalam piksel. Lebar harus berupa bilangan bulat yang lebih besar dari 0. Opsional. Tidak digunakan lagi. | dapat ditulis |
guestsCanInviteOthers |
boolean |
Apakah tamu selain penyelenggara dapat mengundang orang lain ke acara. Opsional. Nilai defaultnya adalah True. | dapat ditulis |
guestsCanModify |
boolean |
Apakah tamu selain penyelenggara dapat mengubah acara. Opsional. Defaultnya adalah Salah. | dapat ditulis |
guestsCanSeeOtherGuests |
boolean |
Apakah tamu selain penyelenggara dapat melihat siapa peserta acara. Opsional. Nilai defaultnya adalah True. | dapat ditulis |
location |
string |
Lokasi geografis acara dalam format teks bebas. Opsional. | dapat ditulis |
originalStartTime.date |
date |
Tanggal, dalam format "yyyy-mm-dd", jika ini adalah peristiwa sepanjang hari. | dapat ditulis |
originalStartTime.dateTime |
datetime |
Waktu, sebagai nilai tanggal-waktu gabungan (diformat sesuai dengan RFC3339). Offset zona waktu diperlukan kecuali jika zona waktu ditentukan secara eksplisit di timeZone . |
dapat ditulis |
originalStartTime.timeZone |
string |
Zona waktu yang digunakan untuk menentukan waktu. (Diformat sebagai nama Database Zona Waktu IANA, misalnya "Eropa/Zurich".) Untuk acara berulang, kolom ini wajib diisi dan menentukan zona waktu tempat pengulangan diperluas. Untuk satu peristiwa, kolom ini bersifat opsional dan menunjukkan zona waktu kustom untuk awal/akhir acara. | dapat ditulis |
outOfOfficeProperties |
nested object |
Data acara tidak di kantor. Digunakan jika eventType adalah outOfOffice . |
dapat ditulis |
recurrence[] |
list |
Daftar baris RRules, EXRules, RDATE, dan EXDATE untuk acara berulang, seperti yang ditentukan dalam RFC5545. Perhatikan bahwa baris DTSTART dan DTEND tidak diizinkan dalam kolom ini; waktu mulai dan waktu berakhir peristiwa ditentukan di kolom start dan end . Kolom ini dihilangkan untuk satu acara atau beberapa kejadian berulang. |
dapat ditulis |
reminders.overrides[] |
list |
Jika acara tidak menggunakan pengingat default, pengingat ini akan mencantumkan pengingat khusus untuk acara tersebut, atau, jika tidak disetel, menunjukkan bahwa tidak ada pengingat yang ditetapkan untuk acara ini. Jumlah maksimum pengingat penggantian adalah 5. | dapat ditulis |
reminders.overrides[].method |
string |
Metode yang digunakan oleh pengingat ini. Kemungkinan nilainya adalah:
Wajib diisi saat menambahkan pengingat. |
dapat ditulis |
reminders.overrides[].minutes |
integer |
Jumlah menit sebelum acara dimulai saat pengingat akan dipicu. Nilai yang valid adalah antara 0 dan 40320 (4 minggu dalam menit). Wajib diisi saat menambahkan pengingat. |
dapat ditulis |
reminders.useDefault |
boolean |
Apakah pengingat default kalender berlaku untuk acara. | dapat ditulis |
sequence |
integer |
Nomor urut sesuai dengan iKalender. | dapat ditulis |
source.title |
string |
Judul sumber; misalnya judul laman web atau subjek email. | dapat ditulis |
source.url |
string |
URL sumber yang mengarah ke resource. Skema URL harus HTTP atau HTTPS. | dapat ditulis |
start.date |
date |
Tanggal, dalam format "yyyy-mm-dd", jika ini adalah peristiwa sepanjang hari. | dapat ditulis |
start.dateTime |
datetime |
Waktu, sebagai nilai tanggal-waktu gabungan (diformat sesuai dengan RFC3339). Offset zona waktu diperlukan kecuali jika zona waktu ditentukan secara eksplisit di timeZone . |
dapat ditulis |
start.timeZone |
string |
Zona waktu yang digunakan untuk menentukan waktu. (Diformat sebagai nama Database Zona Waktu IANA, misalnya "Eropa/Zurich".) Untuk acara berulang, kolom ini wajib diisi dan menentukan zona waktu tempat pengulangan diperluas. Untuk satu peristiwa, kolom ini bersifat opsional dan menunjukkan zona waktu kustom untuk awal/akhir acara. | dapat ditulis |
status |
string |
Status acara. Opsional. Kemungkinan nilainya adalah:
|
dapat ditulis |
summary |
string |
Judul acara. | dapat ditulis |
transparency |
string |
Apakah acara memblokir waktu di kalender. Opsional. Kemungkinan nilainya adalah:
|
dapat ditulis |
visibility |
string |
Visibilitas acara. Opsional. Kemungkinan nilainya adalah:
|
dapat ditulis |
workingLocationProperties |
nested object |
Data peristiwa lokasi kerja. | dapat ditulis |
workingLocationProperties.customLocation |
object |
Jika ada, tentukan bahwa pengguna bekerja dari lokasi kustom. | dapat ditulis |
workingLocationProperties.customLocation.label |
string |
Label tambahan opsional untuk informasi tambahan. | dapat ditulis |
workingLocationProperties.homeOffice |
any value |
Jika ada, tentukan bahwa pengguna bekerja di rumah. | dapat ditulis |
workingLocationProperties.officeLocation |
object |
Jika ada, menyebutkan bahwa pengguna bekerja dari kantor. | dapat ditulis |
workingLocationProperties.officeLocation.buildingId |
string |
ID gedung opsional. Alamat ini harus merujuk ke ID gedung di database Resource organisasi. | dapat ditulis |
workingLocationProperties.officeLocation.deskId |
string |
ID desktop opsional. | dapat ditulis |
workingLocationProperties.officeLocation.floorId |
string |
ID lantai opsional. | dapat ditulis |
workingLocationProperties.officeLocation.floorSectionId |
string |
ID bagian lantai opsional. | dapat ditulis |
workingLocationProperties.officeLocation.label |
string |
Nama kantor yang ditampilkan di klien Kalender Web dan Seluler. Sebaiknya Anda merujuk nama gedung di database Fasilitas organisasi. | dapat ditulis |
workingLocationProperties.type |
string |
Jenis lokasi kerja. Kemungkinan nilainya adalah:
Wajib saat menambahkan properti lokasi kerja. |
dapat ditulis |
Respons
Jika berhasil, metode ini akan menampilkan Resource peristiwa dalam isi respons.
Contoh
Catatan: Contoh kode yang tersedia untuk metode ini tidak merepresentasikan semua bahasa pemrograman yang didukung (lihat halaman library klien untuk mengetahui daftar bahasa yang didukung).
Java
Menggunakan library klien Java.
import com.google.api.services.calendar.Calendar; import com.google.api.services.calendar.model.Event; // ... // Initialize Calendar service with valid OAuth credentials Calendar service = new Calendar.Builder(httpTransport, jsonFactory, credentials) .setApplicationName("applicationName").build(); // Retrieve the event from the API Event event = service.events().get("primary", "eventId").execute(); // Make a change event.setSummary("Appointment at Somewhere"); // Update the event Event updatedEvent = service.events().update("primary", event.getId(), event).execute(); System.out.println(updatedEvent.getUpdated());
Python
Menggunakan library klien Python.
# First retrieve the event from the API. event = service.events().get(calendarId='primary', eventId='eventId').execute() event['summary'] = 'Appointment at Somewhere' updated_event = service.events().update(calendarId='primary', eventId=event['id'], body=event).execute() # Print the updated date. print updated_event['updated']
PHP
Menggunakan library klien PHP.
// First retrieve the event from the API. $event = $service->events->get('primary', 'eventId'); $event->setSummary('Appointment at Somewhere'); $updatedEvent = $service->events->update('primary', $event->getId(), $event); // Print the updated date. echo $updatedEvent->getUpdated();
Ruby
Menggunakan library klien Ruby.
event = client.get_event('primary', 'eventId') event.summary = 'Appointment at Somewhere' result = client.update_event('primary', event.id, event) print result.updated
Cobalah!
Gunakan APIs Explorer di bawah untuk memanggil metode ini pada data langsung dan melihat responsnya.