Bir etkinliği günceller. Bu yöntem, yamayı desteklemez ve her zaman etkinlik kaynağının tamamını günceller. Kısmi güncelleme yapmak için atomikliği sağlamak amacıyla etags kullanarak get
ve ardından update
gerçekleştirin.
Hemen deneyin veya örneke göz atın.
İstek
HTTP isteği
PUT https://www.googleapis.com/calendar/v3/calendars/calendarId/events/eventId
Parametreler
Parametre adı | Değer | Açıklama |
---|---|---|
Yol parametreleri | ||
calendarId |
string |
Takvim tanımlayıcısı. Takvim kimliklerini almak için calendarList.list yöntemini çağırın. Şu anda oturum açmış kullanıcının birincil takvimine erişmek istiyorsanız "primary " anahtar kelimesini kullanın.
|
eventId |
string |
Etkinlik tanımlayıcısı. |
İsteğe bağlı sorgu parametreleri | ||
alwaysIncludeEmail |
boolean |
Desteği sonlandırıldı ve yoksayıldı. Gerçek bir e-posta adresi olmasa bile düzenleyen, içerik üretici ve katılımcılar için email alanında her zaman bir değer döndürülür (yani oluşturulan, çalışmayan bir değer sağlanır).
|
conferenceDataVersion |
integer |
API istemcisi tarafından desteklenen konferans verilerinin sürüm numarası. 0 sürümü, konferans verisi desteğinin olmadığını varsayar ve etkinliğin gövdesinde bulunan konferans verilerini yoksayar. 1. sürüm, ConferenceData öğesinin kopyalanmasına ve conferenceData öğesinin createRequest alanını kullanarak yeni konferanslar oluşturulmasına olanak tanır. Varsayılan değer 0'dır.
Kabul edilen değerler 0 ile 1 arasıdır (bu değerler dahil).
|
maxAttendees |
integer |
Yanıta dahil edilecek maksimum katılımcı sayısı. Belirtilen sayıdan fazla katılımcı varsa yalnızca katılımcı döndürülür. İsteğe bağlı. |
sendNotifications |
boolean |
Kullanımdan kaldırıldı. Lütfen bunun yerine sendUpdates işlevini kullanın. Etkinlik güncellemesiyle ilgili bildirimlerin (ör. açıklama değişiklikleri vb.) gönderilip gönderilmeyeceği. Değeri false olarak ayarlasanız bile bazı e-postaların yine de gönderilebileceğini unutmayın. Varsayılan değer false 'tir.
|
sendUpdates |
string |
Etkinlik güncellemesiyle ilgili bildirim alması gereken konuklar (ör. başlık değişiklikleri vb.).
Kabul edilen değerler şunlardır:
|
supportsAttachments |
boolean |
İşlemi gerçekleştiren API istemcisinin etkinlik ekleriyle ilgili desteği olup olmadığı. İsteğe bağlı. Varsayılan değer False'tır. |
Yetkilendirme
Bu istek için aşağıdaki kapsamlardan en az biri ile yetkilendirme gerekir:
Kapsam |
---|
https://www.googleapis.com/auth/calendar |
https://www.googleapis.com/auth/calendar.events |
https://www.googleapis.com/auth/calendar.app.created |
https://www.googleapis.com/auth/calendar.events.owned |
Daha fazla bilgi için kimlik doğrulama ve yetkilendirme sayfasına bakın.
İstek içeriği
İstek gövdesinde, aşağıdaki özelliklere sahip bir Etkinlikler kaynağı sağlayın:
Mülk adı | Değer | Açıklama | Notlar |
---|---|---|---|
Zorunlu Özellikler | |||
end |
nested object |
Etkinliğin bitiş zamanı (dahil değildir). Düzenli bir etkinlik için bu, ilk örneğin bitiş zamanıdır. | |
start |
nested object |
Etkinliğin başlangıç zamanı (dahil). Yinelenen bir etkinlik için bu, ilk örneğin başlangıç zamanıdır. | |
İsteğe Bağlı Özellikler | |||
anyoneCanAddSelf |
boolean |
Kullanıcıların etkinliğe kendilerini davet edip edemeyeceği (desteği sonlandırıldı). İsteğe bağlı. Varsayılan değer False'tır. | yazılabilir |
attachments[].fileUrl |
string |
Ekin URL bağlantısı. Google Drive dosya ekleri eklemek için Drive API'deki Ek eklenirken gereklidir. |
yazılabilir |
attendees[] |
list |
Etkinliğin katılımcıları. Diğer takvim kullanıcılarıyla etkinlik planlama hakkında daha fazla bilgi için Katılımcı içeren etkinlikler kılavuzuna bakın. Hizmet hesaplarının katılımcı listesini doldurmak için alan genelinde yetki verme özelliğini kullanması gerekir. | yazılabilir |
attendees[].additionalGuests |
integer |
Ek konuk sayısı. İsteğe bağlı. Varsayılan değer 0'dır. | yazılabilir |
attendees[].comment |
string |
Katılımcıya ait yanıt yorumu. İsteğe bağlı. | yazılabilir |
attendees[].displayName |
string |
Varsa katılımcının adı. İsteğe bağlı. | yazılabilir |
attendees[].email |
string |
Katılımcıya ait e-posta adresi (varsa). Katılımcı eklerken bu alan mevcut olmalıdır. RFC5322 uyarınca geçerli bir e-posta adresi olmalıdır. Katılımcı eklerken gereklidir. |
yazılabilir |
attendees[].optional |
boolean |
Bu katılımcının isteğe bağlı olup olmadığı. İsteğe bağlı. Varsayılan değer False'tır. | yazılabilir |
attendees[].resource |
boolean |
Katılımcının kaynak olup olmadığı. Yalnızca katılımcı etkinliğe ilk kez eklendiğinde ayarlanabilir. Sonraki değişiklikler yoksayılır. İsteğe bağlı. Varsayılan değer False'tır. | yazılabilir |
attendees[].responseStatus |
string |
Katılımcıya ait yanıt durumu. Olası değerler:
|
yazılabilir |
attendeesOmitted |
boolean |
Katılımcıların etkinliğin temsilinden çıkarılmış olup olmadığı. Bir etkinlik alınırken bu durum, maxAttendee sorgu parametresi tarafından belirtilen bir kısıtlamadan kaynaklanabilir. Bir etkinliği güncellerken bu parametre, yalnızca katılımcının yanıtını güncellemek için kullanılabilir. İsteğe bağlı. Varsayılan değer False'tır. |
yazılabilir |
colorId |
string |
Etkinliğin rengi. Bu, colors tanımının event bölümündeki bir girişi belirten bir kimliktir ( colors uç noktasına bakın). İsteğe bağlı. |
yazılabilir |
conferenceData |
nested object |
Google Meet konferansının ayrıntıları gibi konferansla ilgili bilgiler. Yeni konferans ayrıntıları oluşturmak için createRequest alanını kullanın. Değişikliklerinizin kalıcı olması için tüm etkinlik değiştirme istekleri için conferenceDataVersion istek parametresini 1 olarak ayarlamayı unutmayın. |
yazılabilir |
description |
string |
Etkinliğin açıklaması. HTML içerebilir. İsteğe bağlı. | yazılabilir |
end.date |
date |
Tüm gün süren bir etkinlikse "yyyy-aa-gg" biçiminde tarih. | yazılabilir |
end.dateTime |
datetime |
Birleştirilmiş tarih ve saat değeri olarak zaman (RFC3339'a göre biçimlendirilir). timeZone parametresinde açıkça bir saat dilimi belirtilmediği sürece saat dilimi farkı gereklidir. |
yazılabilir |
end.timeZone |
string |
Zamanın belirtildiği saat dilimi. (IANA Saat Dilimi Veritabanı adı olarak biçimlendirilir, ör. "Avrupa/Zürih".) Yinelenen etkinlikler için bu alan gereklidir ve yinelemenin genişletildiği saat dilimini belirtir. Tek seferlik etkinlikler için isteğe bağlı olan bu alan, etkinliğin başlangıç/bitiş saati dilimiyle ilgili özel bir saat dilimi belirtir. | yazılabilir |
extendedProperties.private |
object |
Bu takvimde görünen etkinliğin kopyasına özel özellikler. | yazılabilir |
extendedProperties.shared |
object |
Diğer katılımcıların takvimlerindeki etkinlik kopyaları arasında paylaşılan özellikler. | yazılabilir |
focusTimeProperties |
nested object |
Odaklanma zamanı etkinliği verileri. eventType focusTime ise kullanılır. |
yazılabilir |
gadget.display |
string |
Cihazın görüntüleme modu. Kullanımdan kaldırıldı. Olası değerler:
|
yazılabilir |
gadget.height |
integer |
Gadget'ın piksel cinsinden yüksekliği. Yükseklik, 0'dan büyük bir tam sayı olmalıdır. İsteğe bağlı. Kullanımdan kaldırıldı. | yazılabilir |
gadget.iconLink |
string |
Cihazın simge URL'si. URL şeması HTTPS olmalıdır. Kullanımdan kaldırıldı. | yazılabilir |
gadget.link |
string |
Cihazın URL'si. URL şeması HTTPS olmalıdır. Kullanımdan kaldırıldı. | yazılabilir |
gadget.preferences |
object |
Tercihler'i tıklayın. | yazılabilir |
gadget.title |
string |
Gadget'ın başlığı. Kullanımdan kaldırıldı. | yazılabilir |
gadget.type |
string |
Cihazın türü. Kullanımdan kaldırıldı. | yazılabilir |
gadget.width |
integer |
Gadget'ın piksel cinsinden genişliği. Genişlik, 0'dan büyük bir tam sayı olmalıdır. İsteğe bağlı. Kullanımdan kaldırıldı. | yazılabilir |
guestsCanInviteOthers |
boolean |
Düzenleyen dışındaki katılımcıların etkinliğe başkalarını davet edip edemeyeceği. İsteğe bağlı. Varsayılan değer True'dur. | yazılabilir |
guestsCanModify |
boolean |
Düzenleyen dışındaki katılımcıların etkinliği değiştirip değiştiremeyeceği. İsteğe bağlı. Varsayılan değer False'tır. | yazılabilir |
guestsCanSeeOtherGuests |
boolean |
Düzenleyen dışındaki katılımcıların, etkinliğin katılımcılarını görüp göremeyeceği. İsteğe bağlı. Varsayılan değer True'dur. | yazılabilir |
location |
string |
Etkinliğin coğrafi konumu, serbest biçimli metin olarak. İsteğe bağlı. | yazılabilir |
originalStartTime.date |
date |
Tüm gün süren bir etkinlikse "yyyy-aa-gg" biçiminde tarih. | yazılabilir |
originalStartTime.dateTime |
datetime |
Birleştirilmiş tarih ve saat değeri olarak zaman (RFC3339'a göre biçimlendirilir). timeZone parametresinde açıkça bir saat dilimi belirtilmediği sürece saat dilimi farkı gereklidir. |
yazılabilir |
originalStartTime.timeZone |
string |
Zamanın belirtildiği saat dilimi. (IANA Saat Dilimi Veritabanı adı olarak biçimlendirilir, ör. "Avrupa/Zürih".) Yinelenen etkinlikler için bu alan gereklidir ve yinelemenin genişletildiği saat dilimini belirtir. Tek seferlik etkinlikler için isteğe bağlı olan bu alan, etkinliğin başlangıç/bitiş saati dilimiyle ilgili özel bir saat dilimi belirtir. | yazılabilir |
outOfOfficeProperties |
nested object |
Ofis dışında etkinlik verileri. eventType outOfOffice ise kullanılır. |
yazılabilir |
recurrence[] |
list |
RFC5545'te belirtildiği gibi, yinelenen bir etkinlik için RRULE, EXRULE, RDATE ve EXDATE satırlarının listesi. Bu alanda DTSTART ve DTEND satırlarına izin verilmediğini unutmayın. Etkinliğin başlangıç ve bitiş zamanları start ve end alanlarında belirtilir. Bu alan, tek seferlik etkinlikler veya yinelenen etkinliklerin örnekleri için atlanır. |
yazılabilir |
reminders.overrides[] |
list |
Etkinlikte varsayılan hatırlatıcılar kullanılmıyorsa bu alan, etkinliğe özgü hatırlatıcıları listeler veya ayarlanmamışsa bu etkinlik için hatırlatıcı ayarlanmadığını gösterir. Geçersiz kılma hatırlatıcısı sayısı en fazla 5 olabilir. | yazılabilir |
reminders.overrides[].method |
string |
Bu hatırlatıcının kullandığı yöntem. Olası değerler:
Hatırlatıcı eklerken gereklidir. |
yazılabilir |
reminders.overrides[].minutes |
integer |
Hatırlatıcının etkinlikten kaç dakika önce tetiklenmesi gerektiğini belirtir. Geçerli değerler 0 ile 40.320 (dakikada 4 hafta) arasındadır. Hatırlatıcı eklerken gereklidir. |
yazılabilir |
reminders.useDefault |
boolean |
Takvimdeki varsayılan hatırlatıcıların etkinlik için geçerli olup olmadığı. | yazılabilir |
sequence |
integer |
iCalendar'a göre sıra numarası. | yazılabilir |
source.title |
string |
Kaynağın başlığı (ör. bir web sayfasının başlığı veya e-posta konusu). | yazılabilir |
source.url |
string |
Bir kaynağı işaret eden kaynağın URL'si. URL şeması HTTP veya HTTPS olmalıdır. | yazılabilir |
start.date |
date |
Tüm gün süren bir etkinlikse "yyyy-aa-gg" biçiminde tarih. | yazılabilir |
start.dateTime |
datetime |
Birleştirilmiş tarih ve saat değeri olarak zaman (RFC3339'a göre biçimlendirilir). timeZone parametresinde açıkça bir saat dilimi belirtilmediği sürece saat dilimi farkı gereklidir. |
yazılabilir |
start.timeZone |
string |
Zamanın belirtildiği saat dilimi. (IANA Saat Dilimi Veritabanı adı olarak biçimlendirilir, ör. "Avrupa/Zürih".) Yinelenen etkinlikler için bu alan gereklidir ve yinelemenin genişletildiği saat dilimini belirtir. Tek seferlik etkinlikler için isteğe bağlı olan bu alan, etkinliğin başlangıç/bitiş saati dilimiyle ilgili özel bir saat dilimi belirtir. | yazılabilir |
status |
string |
Etkinliğin durumu. İsteğe bağlı. Olası değerler:
|
yazılabilir |
summary |
string |
Etkinliğin adı. | yazılabilir |
transparency |
string |
Etkinliğin takvimde zaman ayırıp ayırmadığını belirtir. İsteğe bağlı. Olası değerler:
|
yazılabilir |
visibility |
string |
Etkinliğin görünürlüğü. İsteğe bağlı. Olası değerler:
|
yazılabilir |
workingLocationProperties |
nested object |
Çalışma yeri etkinlik verileri. | yazılabilir |
workingLocationProperties.customLocation |
object |
Varsa kullanıcının özel bir konumdan çalıştığını belirtir. | yazılabilir |
workingLocationProperties.customLocation.label |
string |
Ek bilgi için isteğe bağlı ek etiket. | yazılabilir |
workingLocationProperties.homeOffice |
any value |
Varsa kullanıcının evde çalıştığını belirtir. | yazılabilir |
workingLocationProperties.officeLocation |
object |
Mevcut olduğunda, kullanıcının ofisten çalıştığını belirtir. | yazılabilir |
workingLocationProperties.officeLocation.buildingId |
string |
İsteğe bağlı bir bina tanımlayıcısı. Bu, kuruluşun Kaynaklar veritabanında bir bina kimliğine referans vermelidir. | yazılabilir |
workingLocationProperties.officeLocation.deskId |
string |
İsteğe bağlı bir müşteri temsilcisi tanımlayıcısı. | yazılabilir |
workingLocationProperties.officeLocation.floorId |
string |
İsteğe bağlı kat tanımlayıcısı. | yazılabilir |
workingLocationProperties.officeLocation.floorSectionId |
string |
İsteğe bağlı kat bölümü tanımlayıcısı. | yazılabilir |
workingLocationProperties.officeLocation.label |
string |
Takvim web ve mobil istemcilerinde gösterilen ofis adı. Kuruluşun Kaynaklar veritabanında bir bina adına referans vermenizi öneririz. | yazılabilir |
workingLocationProperties.type |
string |
Çalışma yerinin türü. Olası değerler:
Çalışma yeri özellikleri eklenirken gereklidir. |
yazılabilir |
Yanıt
Başarılı olursa bu yöntem, yanıt gövdesinde bir Events kaynağı döndürür.
Örnekler
Not: Bu yöntem için kullanıma sunulan kod örnekleri, desteklenen tüm programlama dillerini kapsamaz (Desteklenen dillerin listesi için istemci kitaplıkları sayfasını inceleyin).
Java
Java istemci kitaplığını kullanır.
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
Python istemci kitaplığını kullanır.
# 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
PHP istemci kitaplığını kullanır.
// 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
Ruby istemci kitaplığını kullanır.
event = client.get_event('primary', 'eventId') event.summary = 'Appointment at Somewhere' result = client.update_event('primary', event.id, event) print result.updated
Deneyin!
Canlı verilerde bu yöntemi çağırmak ve yanıtı görmek için aşağıdaki API Gezgini'ni kullanın.