Events: update

Bir etkinliği günceller. Bu yöntem yama semantiğini desteklemez ve her zaman tüm etkinlik kaynağını günceller. Kısmi güncelleme yapmak için get ve ardından atomiklik sağlamak için etag'leri kullanarak update işlemi gerçekleştirin. Hemen deneyin veya bir örneğe 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. Oturum açmış olan kullanıcının birincil takvimine erişmek istiyorsanız "primary" anahtar kelimesini kullanın.
eventId string Etkinlik tanımlayıcı.
İsteğe bağlı sorgu parametreleri
alwaysIncludeEmail boolean Kullanımdan kaldırıldı ve yoksayıldı. Gerçek bir e-posta adresi olmasa bile (yani oluşturulmuş, çalışmayan bir değer sağlanacak) etkinliği düzenleyen, oluşturan ve katılımcılar için email alanında her zaman bir değer döndürülür.
conferenceDataVersion integer API istemcisi tarafından desteklenen konferans verilerinin sürüm numarası. Sürüm 0, konferans veri desteğinin olmadığını varsayar ve etkinlik gövdesindeki konferans verilerini yoksayar. Sürüm 1, ConferenceData'nın kopyalanması ve ConferenceData'nın createRequest alanını kullanarak yeni konferanslar oluşturma desteği sağlar. Varsayılan değer 0'dır. Kabul edilebilir değerler 0 - 1 (bu değerler dahil) arasındadır.
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ı. Bunun yerine lütfen sendUpdates'i kullanın.

Etkinlik güncellemesiyle ilgili bildirim gönderilip gönderilmeyeceği (örneğin, açıklama değişiklikleri vb.). Değeri false olarak ayarlasanız bile bazı e-postaların yine de gönderilebileceğini unutmayın. Varsayılan değer: false.
sendUpdates string Etkinlik güncellemeleriyle ilgili bildirim alması gereken davetliler (örneğin, başlık değişiklikleri vb.).

Kabul edilebilir değerler şunlardır:
  • "all": Bildirimler tüm davetlilere gönderilir.
  • "externalOnly": Bildirimler yalnızca Google Takvim kullanıcısı olmayan davetlilere gönderilir.
  • "none": Bildirim gönderilmez. Takvim taşıma görevleri için bunun yerine Events.import yöntemini kullanabilirsiniz.
supportsAttachments boolean API istemcisi gerçekleştirme işleminin etkinlik eklerini destekleyip desteklemediği. İsteğe bağlı. Varsayılan, Yanlış değeridir.

Yetkilendirme

Bu istek, aşağıdaki kapsamlardan en az biriyle yetkilendirme gerektirir:

Kapsam
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.events

Daha fazla bilgi için kimlik doğrulama ve yetkilendirme sayfasına göz atı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 mülkler
end nested object Etkinliğin (hariç) bitiş zamanı. Düzenli bir etkinlik için bu, ilk örneğin bitiş zamanıdır.
start nested object Etkinliğin (dahil) başlangıç zamanı. Düzenli bir etkinlik için bu, ilk örneğin başlangıç zamanıdır.
İsteğe Bağlı Özellikler
anyoneCanAddSelf boolean Kimsenin kendisini etkinliğe davet edip edemeyeceği (desteği sonlandırıldı). İsteğe bağlı. Varsayılan, Yanlış değeridir. yazılabilir
attachments[].fileUrl string Ekin URL bağlantısı.

Google Drive dosya ekleri eklemek için, Drive API'deki Files kaynağının alternateLink özelliğindeki biçimi kullanın.

Ek eklerken gerekir.

yazılabilir
attendees[] list Etkinliğin katılımcıları. Diğer takvim kullanıcılarıyla etkinlik planlama hakkında daha fazla bilgi edinmek için Katılımcılı etkinlikler kılavuzunu inceleyin. Hizmet hesapları, katılımcı listesini doldurmak için alan genelinde yetki verme özelliğini kullanmalıdır. 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ının 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 Varsa katılımcının e-posta adresi. Katılımcı eklerken bu alan mevcut olmalıdır. RFC5322'ye göre geçerli bir e-posta adresi olmalıdır.

Katılımcı eklerken gereklidir.

yazılabilir
attendees[].optional boolean Bunun isteğe bağlı bir katılımcı olup olmadığı. İsteğe bağlı. Varsayılan, Yanlış değeridir. yazılabilir
attendees[].resource boolean Katılımcının bir kaynak olup olmadığı. Yalnızca katılımcı etkinliğe ilk kez eklendiğinde ayarlanabilir. Daha sonraki değişiklikler yoksayılır. İsteğe bağlı. Varsayılan, Yanlış değeridir. yazılabilir
attendees[].responseStatus string Katılımcının yanıt durumu. Olası değerler:
  • "needsAction" - Katılımcı davetiyeye yanıt vermedi (yeni etkinlikler için önerilir).
  • "declined" - Katılımcı davetiyeyi reddetti.
  • "tentative" - Katılımcı davetiyeyi geçici olarak kabul etti.
  • "accepted" - Katılımcı davetiyeyi kabul etti.
yazılabilir
attendeesOmitted boolean Katılımcıların etkinlik gösteriminden çıkarılıp çıkarılmayacağı. Bir etkinlik alınırken bu durum, maxAttendee sorgu parametresi tarafından belirtilen bir kısıtlamadan kaynaklanıyor olabilir. Bir etkinliği güncellerken, bu yalnızca katılımcının yanıtını güncellemek için kullanılabilir. İsteğe bağlı. Varsayılan, Yanlış değeridir. yazılabilir
colorId string Etkinliğin rengi. Bu, renk tanımının event bölümündeki bir girişi gösteren kimliktir ( renk uç noktasına bakın). İsteğe bağlı. yazılabilir
conferenceData nested object Konferansla ilgili bilgiler (ör. bir Google Meet konferansının ayrıntıları) Yeni konferans ayrıntıları oluşturmak için createRequest alanını kullanın. Değişikliklerinizi kaybetmemek için tüm etkinlik değişiklik isteklerinde 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 Bu tüm gün süren bir etkinlikse, "yyyy-aa-gg" biçiminde tarih. yazılabilir
end.dateTime datetime Birleşik tarih-saat değeri olarak saat (RFC3339'a göre biçimlendirilmiştir). timeZone ürününde saat dilimi açıkça belirtilmedikçe saat dilimi farkı gereklidir. yazılabilir
end.timeZone string Saatin belirtildiği saat dilimi. (IANA Saat Dilimi Veritabanı adı olarak biçimlendirilir, ör. "Avrupa/Zürih".) Düzenli etkinlikler için bu alan zorunludur ve yinelemenin genişletildiği saat dilimini belirtir. Tek etkinlikler için bu alan isteğe bağlıdır ve etkinliğin başlangıç/bitişi için özel bir saat dilimini belirtir. yazılabilir
extendedProperties.private object Etkinliğin bu takvimde görünen kopyasına özel olan özellikler. yazılabilir
extendedProperties.shared object Etkinliğin diğer katılımcıların takvimlerindeki kopyaları arasında paylaşılan özellikler. yazılabilir
focusTimeProperties nested object Odaklanma Zamanı etkinlik verileri. eventType değeri focusTime ise kullanılır. yazılabilir
gadget.display string Gadget'ın görüntü modu. Kullanımdan kaldırıldı. Olası değerler:
  • "icon" - Gadget, takvim görünümünde etkinlik başlığının yanında görüntülenir.
  • "chip" - Etkinlik tıklandığında Gadget görüntülenir.
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.preferences object Tercihler'e dokunun. yazılabilir
gadget.title string Gadget'ın başlığı. Kullanımdan kaldırıldı. yazılabilir
gadget.type string Gadget'ı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 kişi dışındaki katılımcıların etkinliğe başkalarını davet edip edemeyeceği. İsteğe bağlı. Varsayılan, Doğru değeridir. yazılabilir
guestsCanModify boolean Düzenleyen dışındaki katılımcıların etkinliği değiştirip değiştiremeyeceğini belirler. İsteğe bağlı. Varsayılan, Yanlış değeridir. yazılabilir
guestsCanSeeOtherGuests boolean Düzenleyen dışındaki katılımcıların, etkinlik katılımcılarının kimler olduğunu görüp göremeyeceği. İsteğe bağlı. Varsayılan, Doğru değeridir. yazılabilir
location string Etkinliğin serbest biçimli metin olarak coğrafi konumu. İsteğe bağlı. yazılabilir
originalStartTime.date date Bu tüm gün süren bir etkinlikse, "yyyy-aa-gg" biçiminde tarih. yazılabilir
originalStartTime.dateTime datetime Birleşik tarih-saat değeri olarak saat (RFC3339'a göre biçimlendirilmiştir). timeZone ürününde saat dilimi açıkça belirtilmedikçe saat dilimi farkı gereklidir. yazılabilir
originalStartTime.timeZone string Saatin belirtildiği saat dilimi. (IANA Saat Dilimi Veritabanı adı olarak biçimlendirilir, ör. "Avrupa/Zürih".) Düzenli etkinlikler için bu alan zorunludur ve yinelemenin genişletildiği saat dilimini belirtir. Tek etkinlikler için bu alan isteğe bağlıdır ve etkinliğin başlangıç/bitişi için özel bir saat dilimini belirtir. yazılabilir
outOfOfficeProperties nested object Ofis dışında etkinlik verileri. eventType değeri outOfOffice ise kullanılır. yazılabilir
recurrence[] list RFC5545'te belirtildiği şekilde, düzenli bir etkinliğin RRULE, EXRULE, RDATE ve EXDATE satırlarının listesi. Bu alanda DTSTART ve DTEND satırlarına izin verilmediğini unutmayın. Etkinlik başlangıç ve bitiş zamanları start ve end alanlarında belirtilir. Bu alan, tek etkinlikler veya yinelenen etkinlik örnekleri için atlanır. yazılabilir
reminders.overrides[] list Etkinlikte varsayılan hatırlatıcılar kullanılmıyorsa etkinliğe özel hatırlatıcılar listelenir. Etkinlik ayarlanmazsa bu etkinlik için herhangi bir hatırlatıcı ayarlanmadı demektir. En fazla 5 geçersiz kılma hatırlatıcısı kullanılabilir. yazılabilir
reminders.overrides[].method string Bu hatırlatıcının kullandığı yöntem. Olası değerler:
  • "email" - Hatırlatıcılar e-postayla gönderilir.
  • "popup" - Hatırlatıcılar, kullanıcı arayüzü pop-up'ı yoluyla gönderilir.

Hatırlatıcı eklerken zorunludur.

yazılabilir
reminders.overrides[].minutes integer Etkinlik başlamadan kaç dakika önce hatırlatıcı tetikleneceğini belirtir. Geçerli değerler 0 ile 40.320 arasındadır (dakika cinsinden 4 hafta).

Hatırlatıcı eklerken zorunludur.

yazılabilir
reminders.useDefault boolean Takvimdeki varsayılan hatırlatıcıların etkinliğe uygulanıp uygulanmayacağı. yazılabilir
sequence integer iCalendar'a göre sıra numarası. yazılabilir
source.title string Kaynağın başlığı. Örneğin, 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 Bu tüm gün süren bir etkinlikse, "yyyy-aa-gg" biçiminde tarih. yazılabilir
start.dateTime datetime Birleşik tarih-saat değeri olarak saat (RFC3339'a göre biçimlendirilmiştir). timeZone ürününde saat dilimi açıkça belirtilmedikçe saat dilimi farkı gereklidir. yazılabilir
start.timeZone string Saatin belirtildiği saat dilimi. (IANA Saat Dilimi Veritabanı adı olarak biçimlendirilir, ör. "Avrupa/Zürih".) Düzenli etkinlikler için bu alan zorunludur ve yinelemenin genişletildiği saat dilimini belirtir. Tek etkinlikler için bu alan isteğe bağlıdır ve etkinliğin başlangıç/bitişi için özel bir saat dilimini belirtir. yazılabilir
status string Etkinliğin durumu. İsteğe bağlı. Olası değerler:
  • "confirmed" - Etkinlik onaylandı. Bu, varsayılan durumdur.
  • "tentative": Etkinlik geçici olarak onaylandı.
  • "cancelled" - Etkinlik iptal edildi (silindi). list yöntemi, iptal edilen etkinlikleri yalnızca artımlı senkronizasyonda döndürür (syncToken veya updatedMin belirtildiğinde) ya da showDeleted işareti true olarak ayarlanmışsa. get yöntemi bunları her zaman döndürür.

    İptal edildi durumu, etkinlik türüne bağlı olarak iki farklı durumu temsil eder:

    1. İptal edilmeyen bir düzenli etkinliğe ilişkin iptal edilen istisnalar, bu örneğin artık kullanıcıya sunulmaması gerektiğini gösterir. Müşteriler bu etkinlikleri, yinelenen üst etkinliğin ömrü boyunca depolamalıdır.

      İptal edilen istisnaların yalnızca id, recurringEventId ve originalStartTime alanlarının doldurulacağı garanti edilir. Diğer alanlar boş olabilir.

    2. İptal edilen diğer tüm etkinlikler, silinen etkinlikleri temsil eder. İstemciler, yerel olarak senkronize edilen kopyalarını kaldırmalıdır. Bu tür iptal edilen etkinlikler zaman içinde kaybolacaktır, bu nedenle bunların süresiz olarak kullanılabilir olacağına güvenmeyin.

      Silinen etkinliklerde yalnızca id alanının doldurulması garanti edilir.

    İptal edilen etkinlikler, geri yüklenebilmesi (silme işlemi geri alınabilmesi) için etkinlik ayrıntılarını (özet, konum vb.) düzenleyen kullanıcının takviminde göstermeye devam eder. Benzer şekilde, kullanıcının davet edildiği ve manuel olarak kaldırıldığı etkinliklerde de ayrıntılı bilgi gösterilmeye devam eder. Ancak showDeleted politikasının yanlış değerine ayarlandığı artımlı senkronizasyon istekleri bu ayrıntıları döndürmez.

    Bir etkinliğin düzenleyicisi değişirse (ör. taşıma işlemiyle) ve orijinal düzenleyen kullanıcı, katılımcı listesinde değilse yalnızca id alanının doldurulmasının garanti edildiği, iptal edilmiş bir etkinlik geride kalır.

yazılabilir
summary string Etkinliğin adı. yazılabilir
transparency string Etkinliğin takvimde zamanı engelleyip engellemeyeceğini belirtir. İsteğe bağlı. Olası değerler:
  • "opaque" - Varsayılan değer. Etkinlik takvimde zamanı engeller. Bu, Takvim kullanıcı arayüzündeki Beni şu şekilde göster'i Meşgul olarak ayarlamaya eşdeğerdir.
  • "transparent": Etkinlik, takvimde zamanı engellemez. Bu, Takvim kullanıcı arayüzünde Durumumu şu şekilde göster'i Kullanılabilir olarak ayarlamakla eşdeğerdir.
yazılabilir
visibility string Etkinliğin görünürlüğü. İsteğe bağlı. Olası değerler:
  • "default": Takvimdeki etkinlikler için varsayılan görünürlüğü kullanır. Bu, varsayılan değerdir.
  • "public": Etkinlik herkese açıktır ve etkinlik ayrıntıları takvimin tüm okuyucuları tarafından görülebilir.
  • "private": Etkinlik özeldir ve etkinlik ayrıntılarını yalnızca etkinlik katılımcıları görebilir.
  • "confidential" - Etkinlik gizlidir. Bu değer, uyumluluk nedeniyle sağlanır.
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ı fazladan bir etiket. yazılabilir
workingLocationProperties.homeOffice any value Varsa kullanıcının evde çalıştığını belirtir. yazılabilir
workingLocationProperties.officeLocation object Varsa kullanıcının bir ofisten çalıştığını belirtir. yazılabilir
workingLocationProperties.officeLocation.buildingId string İsteğe bağlı bina tanımlayıcısı. Bu ad, kuruluşun Kaynaklar veritabanındaki bir bina kimliğine referansta bulunmalıdır. yazılabilir
workingLocationProperties.officeLocation.deskId string İsteğe bağlı masa 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 yeri türü. Olası değerler:
  • "homeOffice" - Kullanıcı evde çalışıyor.
  • "officeLocation" - Kullanıcı bir ofisten çalışıyor.
  • "customLocation" - Kullanıcı özel bir konumdan çalışıyor.
Belirtilen adın bir alt alanında tüm ayrıntılar belirtilir ancak bu alan boşsa eksik olabilir. Diğer alanlar yoksayılır.

Çalışma yeri mülkleri eklerken zorunludur.

yazılabilir

Yanıt

Başarılı olursa bu yöntem, yanıt gövdesinde bir Etkinlikler 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ı kullanmalıdı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.

Aşağıdaki API Gezgini'ni kullanarak canlı verilerde bu yöntemi çağırın ve yanıtı görün.