Bir etkinliği içe aktarır. Bu işlem, mevcut bir etkinliğin özel kopyasını takvime eklemek için kullanılır. Hemen deneyin veya bir örneği inceleyin.
İstek
HTTP isteği
POST https://www.googleapis.com/calendar/v3/calendars/calendarId/events/import
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ış olan kullanıcının birincil takvimine erişmek istiyorsanız "primary " anahtar kelimesini kullanın.
|
İsteğe bağlı sorgu parametreleri | ||
conferenceDataVersion |
integer |
API istemcisi tarafından desteklenen konferans verilerinin sürüm numarası. Sürüm 0, konferans verilerinin desteklenmediğini varsayar ve etkinliğin gövdesindeki konferans verilerini yoksayar. 1. sürüm, konferans verileri oluşturma ve konferans verileri ile createRequest alanını kullanarak yeni konferanslar oluşturma desteğini sunar. Varsayılan değer 0'dır.
Kabul edilebilir değerler 0 ile 1 arasındadır (bu değerler dahil).
|
supportsAttachments |
boolean |
API istemci performansı işlevinin etkinlik eklerini destekleyip desteklemediği. İsteğe bağlı. False, varsayılan değerdir. |
Yetkilendirme
Bu istek, aşağıdaki kapsamlardan en az biriyle yetkilendirme gerektiriyor:
Kapsam |
---|
https://www.googleapis.com/auth/calendar |
https://www.googleapis.com/auth/calendar.events |
Daha fazla bilgi edinmek için kimlik doğrulama ve yetkilendirme sayfasını inceleyin.
İstek metni
İ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 (özel) bitiş zamanı. Yinelenen bir etkinlik için bu, ilk örneğin bitiş zamanıdır. | |
iCalUID |
string |
RFC5545'te tanımlandığı şekilde etkinlik benzersiz tanımlayıcısı. Takvim sistemleri genelinde etkinlikleri benzersiz şekilde tanımlamak için kullanılır ve içe aktarma yöntemiyle etkinlikler içe aktarılırken sağlanması gerekir.
|
|
start |
nested object |
Etkinliğin başlangıç saati. 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 (kullanımdan kaldırıldı). İsteğe bağlı. False, varsayılan değerdir. | yazılabilir |
attachments[].fileUrl |
string |
Ekin URL bağlantısı. Google Drive dosya ekleri eklemek için Drive API'deki Ek iliştirilirken 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 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 |
Varsa katılımcının adı. İsteğe bağlı. | yazılabilir |
attendees[].email |
string |
Katılımcının e-posta adresi (varsa). Bu alan, katılımcı eklerken mevcut olmalıdır. RFC5322 uyarınca geçerli bir e-posta adresi olmalıdır. Katılımcı eklenirken zorunludur. |
yazılabilir |
attendees[].optional |
boolean |
İsteğe bağlı bir katılımcı olup olmadığı. İsteğe bağlı. False, varsayılan değerdir. | 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ı. False, varsayılan değerdir. | yazılabilir |
attendees[].responseStatus |
string |
Katılımcının yanıt durumu. Olası değerler:
|
yazılabilir |
attendeesOmitted |
boolean |
Katılımcıların etkinlik temsilinden çıkarılıp çıkarılmadığı. Bir etkinliği alırken bunun nedeni, maxAttendee sorgu parametresi tarafından belirtilen bir kısıtlama 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ı. False, varsayılan değerdir. |
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 |
Google Meet konferansıyla ilgili 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çiminde tarih. | yazılabilir |
end.dateTime |
datetime |
Birleşik tarih ve saat değeri olarak saat (RFC3339'a göre biçimlendirilir). timeZone içinde saat dilimi açıkça belirtilmediği sürece saat dilimi farkı belirtilmelidir. |
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 zorunludur ve yinelenmenin genişletildiği saat dilimini belirtir. Bu alan, tekli etkinlikler için isteğe bağlıdır ve etkinliğin 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 mülkler. | yazılabilir |
gadget.display |
string |
Gadget'ı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 |
Gadget'ın simge URL'si. URL şeması HTTPS olmalıdır. Kullanımdan kaldırıldı. | yazılabilir |
gadget.link |
string |
Gadget'ın URL'si. URL şeması HTTPS olmalıdır. 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 |
Etkinliği düzenleyenin dışındaki katılımcıların etkinliğe başkalarını davet edip edemeyeceği. İsteğe bağlı. Varsayılan değer, Doğru değeridir. | yazılabilir |
guestsCanModify |
boolean |
Etkinliği düzenleyen kullanıcı dışındaki katılımcıların etkinlikte değişiklik yapıp yapamayacağı. İsteğe bağlı. False, varsayılan değerdir. | yazılabilir |
guestsCanSeeOtherGuests |
boolean |
Etkinliği düzenleyenin dışındaki katılımcıların etkinlik katılımcılarının kim olduğunu görüp göremeyeceği. İsteğe bağlı. Varsayılan değer, Doğru değeridir. | yazılabilir |
location |
string |
Etkinliğin serbest biçimli metin olarak bulunduğu coğrafi konumu. İsteğe bağlı. | yazılabilir |
organizer |
object |
Etkinliği düzenleyen kullanıcı. Toplantıyı düzenleyen kişi de katılımcıysa bu durum, organizer alanının Doğru olarak ayarlandığı attendees alt bölümünde ayrı bir girişle gösterilir. Düzenleyeni değiştirmek için taşıma işlemini kullanın. Bir etkinliği içe aktarma işlemi hariç, salt okunur. |
yazılabilir |
organizer.displayName |
string |
Varsa düzenleyenin adı. | yazılabilir |
organizer.email |
string |
Varsa etkinliği düzenleyen kişinin e-posta adresi. RFC5322 uyarınca geçerli bir e-posta adresi olmalıdır. | 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 ve saat değeri olarak saat (RFC3339'a göre biçimlendirilir). timeZone içinde saat dilimi açıkça belirtilmediği sürece saat dilimi farkı belirtilmelidir. |
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 zorunludur ve yinelenmenin genişletildiği saat dilimini belirtir. Bu alan, tekli etkinlikler için isteğe bağlıdır ve etkinliğin başlangıcı/bitişi için özel bir saat dilimi belirtir. | yazılabilir |
recurrence[] |
list |
RFC5545'te belirtildiği gibi, yinelenen bir etkinlik için RSTS, EXCAMPAIGNS, 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 belirtilmiştir. 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 ayarlanmamışsa bu etkinlik için hiçbir hatırlatıcı ayarlanmadığını gösterir. Geçersiz kılma hatırlatıcılarının sayısı en fazla 5 olabilir. | yazılabilir |
reminders.overrides[].method |
string |
Bu hatırlatıcı tarafından kullanılan yöntem. Olası değerler:
Hatırlatıcı eklerken zorunludur. |
yazılabilir |
reminders.overrides[].minutes |
integer |
Etkinlik başlamadan önceki, hatırlatıcının tetiklenmesi gereken dakika sayısı. Geçerli değerler 0 ile 40320 arasındadır (dakika cinsinden 4 hafta). Hatırlatıcı eklerken zorunludur. |
yazılabilir |
reminders.useDefault |
boolean |
Takvim için 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ığı; ö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çiminde tarih. | yazılabilir |
start.dateTime |
datetime |
Birleşik tarih ve saat değeri olarak saat (RFC3339'a göre biçimlendirilir). timeZone içinde saat dilimi açıkça belirtilmediği sürece saat dilimi farkı belirtilmelidir. |
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 zorunludur ve yinelenmenin genişletildiği saat dilimini belirtir. Bu alan, tekli etkinlikler için isteğe bağlıdır ve etkinliğin 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:
|
yazılabilir |
summary |
string |
Etkinliğin adı. | yazılabilir |
transparency |
string |
Etkinliğin takvimde zaman sağlayıp sağlamadığı. İ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 |
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; import com.google.api.services.calendar.model.EventAttendee; import com.google.api.services.calendar.model.EventDateTime; import com.google.api.client.util.DateTime; import java.util.Date; // ... // Initialize Calendar service with valid OAuth credentials Calendar service = new Calendar.Builder(httpTransport, jsonFactory, credentials) .setApplicationName("applicationName").build(); // Create and initialize a new event (could also retrieve an existing event) Event event = new Event(); event.setICalUID("originalUID"); Event.Organizer organizer = new Event.Organizer(); organizer.setEmail("organizerEmail"); organizer.setDisplayName("organizerDisplayName"); event.setOrganizer(organizer); ArrayList<EventAttendee> attendees = new ArrayList<EventAttendee>(); attendees.add(new EventAttendee().setEmail("attendeeEmail")); // ... event.setAttendees(attendees); Date startDate = new Date(); Date endDate = new Date(startDate.getTime() + 3600000); DateTime start = new DateTime(startDate, TimeZone.getTimeZone("UTC")); event.setStart(new EventDateTime().setDateTime(start)); DateTime end = new DateTime(endDate, TimeZone.getTimeZone("UTC")); event.setEnd(new EventDateTime().setDateTime(end)); // Import the event into a calendar Event importedEvent = service.events().calendarImport('primary', event).execute(); System.out.println(importedEvent.getId());
Python
Python istemci kitaplığını kullanır.
event = { 'summary': 'Appointment', 'location': 'Somewhere', 'organizer': { 'email': 'organizerEmail', 'displayName': 'organizerDisplayName' }, 'start': { 'dateTime': '2011-06-03T10:00:00.000-07:00' }, 'end': { 'dateTime': '2011-06-03T10:25:00.000-07:00' }, 'attendees': [ { 'email': 'attendeeEmail', 'displayName': 'attendeeDisplayName', }, # ... ], 'iCalUID': 'originalUID' } imported_event = service.events().import_(calendarId='primary', body=event).execute() print imported_event['id']
PHP
PHP istemci kitaplığını kullanır.
$event = new Google_Service_Calendar_Event(); $event->setSummary('Appointment'); $event->setLocation('Somewhere'); $start = new Google_Service_Calendar_EventDateTime(); $start->setDateTime('2011-06-03T10:00:00.000-07:00'); $event->setStart($start); $end = new Google_Service_Calendar_EventDateTime(); $end->setDateTime('2011-06-03T10:25:00.000-07:00'); $event->setEnd($end); $attendee1 = new Google_Service_Calendar_EventAttendee(); $attendee1->setEmail('attendeeEmail'); // ... $attendees = array($attendee1, // ..., ); $event->attendees = $attendees; $organizer = new Google_Service_Calendar_EventOrganizer(); $organizer->setEmail('organizerEmail'); $organizer->setDisplayName('organizerDisplayName'); $event->setOrganizer($organizer); $event->setICalUID('originalUID'); $importedEvent = $service->events->import('primary', $event); echo $importedEvent->getId();
Ruby
Ruby istemci kitaplığı kullanır.
event = Google::Apis::CalendarV3::Event.new( summary: 'Appointment', location: 'Somewhere', organizer: { email: 'organizerEmail', display_name: 'organizerDisplayName' }, start: { date_time: '2011-06-03T10:00:00.000-07:00' }, end: { date_time: '2011-06-03T10:25:00.000-07:00' }, attendees: [ { email: 'attendeeEmail', display_name: 'attendeeDisplayName', }, # ... ], i_cal_uid: 'originalUID' ) result = client.import_event('primary', event) print result.id
Deneyin.
Bu yöntemi canlı verilerde çağırmak ve yanıtı görmek için aşağıdaki API Gezgini'ni kullanın.