Events: update

Bir etkinliği günceller. Bu yöntem, yama semantiğini desteklemez ve her zaman etkinlik kaynağının tamamını günceller. Kısmi güncelleme yapmak için get etiketini ve ardından update etiketini kullanarak etkinlik olmadığından emin olun. Hemen deneyin veya bir örneği inceleyin.

İ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. Halihazırda giriş yapmış 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 Kullanımdan kaldırıldı ve yoksayıldı. Gerçek e-posta adresi bulunmasa bile (ör. oluşturulmuş, çalışmayan bir değer sağlanmış olsa bile) düzenleyen, oluşturan ve katılanlar için email alanında 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'da konferans veri desteği bulunmadığı varsayılır ve etkinliğin gövdesinde konferans verileri yoksayılır. Sürüm 1, Konferans Verilerinin kopyalanması ve konferans Verilerinin createRequest alanını kullanarak yeni konferanslar oluşturulması için destek sağlar. Varsayılan değer 0'dır. Kabul edilebilir değerler 0 ile 1 arasındadır (dahil).
maxAttendees integer Yanıta dahil edilecek maksimum katılımcı sayısı. Belirtilen katılımcı sayısından 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 sendUpdates'i kullanın.

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

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

Yetkilendirme

Bu istek için aşağıdaki kapsamlardan en az birinin yetkilendirilmesi gerekir:

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 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
Gerekli Özellikler
end nested object Etkinliğin (özel) bitiş zamanı. Yinelenen bir etkinlik için bu, ilk örneğin bitiş zamanıdır.
start nested object Etkinliğin (dahil) başlangıç zamanı. Yinelenen bir etkinlik için bu, ilk örneğin başlangıç zamanıdır.
İsteğe Bağlı Özellikler
anyoneCanAddSelf boolean Katılımcıların kendilerini etkinliğe davet edip edemeyeceği (kullanımdan kaldırıldı). İsteğe bağlı. Varsayılan, False 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ğinde kullanılan biçimi kullanın.

Ek ekleyebilirsiniz.

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ılarla etkinlikler kılavuzunu inceleyin. 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ının yanıt yorumu. İsteğe bağlı. yazılabilir
attendees[].displayName string Katılımcının adı (varsa). İsteğe bağlı. yazılabilir
attendees[].email string Katılımcının e-posta adresi (varsa). Bu alan, katılımcı eklerken bulunmalı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 İsteğe bağlı bir katılımcı olup olmadığınız. İsteğe bağlı. Varsayılan, False değeridir. 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 yok sayılır. İsteğe bağlı. Varsayılan, False 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 etmiştir.
  • "accepted": Katılımcı davetiyeyi kabul etmiştir.
yazılabilir
attendeesOmitted boolean Katılımcıların etkinliğin temsilinden çıkarılıp çıkarılmadığı. Bu durum bir etkinliği alırken maxAttendee sorgu parametresi tarafından belirtilen bir kısıtlamadan kaynaklanıyor olabilir. Bu özellik, bir etkinliği güncellerken yalnızca katılımcının yanıtını güncellemek için kullanılabilir. İsteğe bağlı. Varsayılan, False değeridir. yazılabilir
colorId string Etkinliğin rengi. Bu, renk tanımının event bölümündeki bir girişe referans veren bir kimliktir ( renk uç noktasına bakın). İsteğe bağlı. yazılabilir
conferenceData nested object Bir 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şikliklerinizi korumak için tüm etkinlik değişikliği 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çimindeki tarih. yazılabilir
end.dateTime datetime Birleşik bir tarih/saat değeri olarak saat (RFC3339'a göre biçimlendirilmiştir). timeZone içinde açıkça belirtilen bir saat dilimi olmadığı sürece 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".) Yinelenen etkinlikler için bu alan gereklidir ve yinelenmenin genişletildiği saat dilimi belirtilir. Tekli etkinlikler için bu alan isteğe bağlıdır ve etkinlik başlangıcı/bitişi için ö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 takvimlerinde etkinliğin kopyaları arasında paylaşılan özellikler. yazılabilir
gadget.display string Gadget'ın görüntüleme 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 cinsinde 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 cinsinde 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 Etkinliği düzenleyenin dışındaki katılımcıların etkinliğe başkalarını davet edip edemeyeceği. İsteğe bağlı. Doğru, varsayılan değerdir. yazılabilir
guestsCanModify boolean Etkinliği düzenleyen kullanıcı dışındaki katılımcıların etkinliği değiştirip değiştiremeyeceği. İsteğe bağlı. Varsayılan, False değeridir. yazılabilir
guestsCanSeeOtherGuests boolean Etkinliği düzenleyenin dışındaki katılımcıların, etkinliğin katılımcılarının kim olduğunu görüp göremeyeceği. İsteğe bağlı. Doğru, varsayılan değerdir. yazılabilir
location string Serbest biçimli metin olarak etkinliğin 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çimindeki tarih. yazılabilir
originalStartTime.dateTime datetime Birleşik bir tarih/saat değeri olarak saat (RFC3339'a göre biçimlendirilmiştir). timeZone içinde açıkça belirtilen bir saat dilimi olmadığı sürece 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".) Yinelenen etkinlikler için bu alan gereklidir ve yinelenmenin genişletildiği saat dilimi belirtilir. Tekli etkinlikler için bu alan isteğe bağlıdır ve etkinlik başlangıcı/bitişi için özel bir saat dilimi belirtir. yazılabilir
recurrence[] list RFC5545'te belirtildiği gibi, düzenli bir etkinliğe ait RCSR, EXCSR, 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 tek etkinlikler veya yinelenen etkinliklerin örnekleri için çıkarılır. yazılabilir
reminders.overrides[] list Etkinlik varsayılan hatırlatıcıları kullanmıyorsa bu ayar, etkinliğe özel hatırlatıcıları listeler veya ayarlanmazsa bu etkinlik için hiçbir hatırlatıcının ayarlanmadığını gösterir. Geçersiz kılma hatırlatıcılarının maksimum sayısı 5'tir. 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'ı aracılığıyla gönderilir.

Hatırlatıcı eklerken gereklidir.

yazılabilir
reminders.overrides[].minutes integer Hatırlatıcının tetikleneceği etkinliğin başlangıcından önceki dakika sayısı. Geçerli değerler 0 ile 40320 arasındadır (dakika cinsinden 4 hafta).

Hatırlatıcı eklerken gereklidir.

yazılabilir
reminders.useDefault boolean Takvimin varsayılan hatırlatıcılarının etkinlik için geçerli olup olmadığı. yazılabilir
sequence integer iCalendar'a uygun 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ğı gösteren 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çimindeki tarih. yazılabilir
start.dateTime datetime Birleşik bir tarih/saat değeri olarak saat (RFC3339'a göre biçimlendirilmiştir). timeZone içinde açıkça belirtilen bir saat dilimi olmadığı sürece 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".) Yinelenen etkinlikler için bu alan gereklidir ve yinelenmenin genişletildiği saat dilimi belirtilir. Tekli etkinlikler için bu alan isteğe bağlıdır ve etkinlik başlangıcı/bitişi için özel bir saat dilimi 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ı senkronizasyonla (syncToken veya updatedMin belirtildiğinde) ya da showDeleted işareti true olarak ayarlanmışsa döndürür. get yöntemi her zaman bunları döndürür.

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

    1. İptal edilmemiş bir düzenli etkinliğin iptal edilmiş istisnaları, bu örneğin artık kullanıcıya sunulmaması gerektiğini gösterir. Müşteriler, bu etkinlikleri düzenli olarak üst etkinliğin düzenlendiği süre boyunca saklamalıdır.

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

    2. İptal edilen diğer tüm etkinlikler silinen etkinlikleri temsil eder. Müşteriler, yerel olarak senkronize edilmiş kopyalarını kaldırmalıdır. İptal edilen bu etkinlikler zaman içinde kaybolacaklarından, bunların süresiz olarak kullanılabilir olmasına güvenmeyin.

      Silinen etkinliklerin yalnızca id alanının doldurulacağı garanti edilir.

    Düzenleyen kişinin takviminde, iptal edilen etkinliklerin geri yüklenebilmesi (silinmesi) için etkinlik ayrıntıları (özet, konum vb.) gösterilir. Benzer şekilde, kullanıcının davet edildiği ve manuel olarak kaldırdığı etkinlikler de ayrıntı sağlamaya devam eder. Ancak, showDeleted yanlış değerine ayarlanmış artımlı senkronizasyon istekleri bu ayrıntıları döndürmez.

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

yazılabilir
summary string Etkinliğin adı. yazılabilir
transparency string Etkinliğin takvimdeki zamanı engelleyip engellemediği. İsteğe bağlı. Olası değerler:
  • "opaque": Varsayılan değer. Etkinlik, takvimde zamanı engeller. Bu, Takvim kullanıcı arayüzünde Beni şu şekilde göster seçeneğinin Meşgul olarak ayarlanmasına eşdeğerdir.
  • "transparent": Etkinlik, takvimde zamanı engellemez. Bu, Takvim kullanıcı arayüzünde Beni şu şekilde göster seçeneğinin Kullanılabilir olarak ayarlanmasıyla eşdeğerdir.
yazılabilir
visibility string Etkinliğin görünürlüğü. İsteğe bağlı. Olası değerler:
  • "default": Takvimdeki etkinliklerin varsayılan görünürlüğünü 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 gizlidir ve etkinlik ayrıntılarını yalnızca etkinlik katılımcıları görüntüleyebilir.
  • "confidential": Etkinlik gizli. 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 etikettir. 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 ofiste çalıştığını gösterir. 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ı masa tanımlayıcısı. yazılabilir
workingLocationProperties.officeLocation.floorId string İsteğe bağlı bir kat tanımlayıcı. 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ındaki bir bina adına başvurmanızı öneririz. yazılabilir
workingLocationProperties.type string Çalışma yerinin 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ışıyordur.
Tüm ayrıntılar, belirtilen adın bir alt alanında belirtilir ancak bu alan boşsa eksik olabilir. Diğer alanlar yok sayılır.

Çalışma yeri özellikleri eklenirken gerekir.

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ı 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']

2.999

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ığı 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.

Bu yöntemi canlı verilerde çağırmak ve yanıtı görmek için aşağıdaki API Gezgini'ni kullanın.