Events: list

Belirtilen takvimdeki etkinlikleri döndürür. Şimdi deneyin veya bir örneğe göz atın.

İstek

HTTP isteği

GET https://www.googleapis.com/calendar/v3/calendars/calendarId/events

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 kullanın. Şu anda oturum açmış kullanıcının birincil takvimine erişmek istiyorsanız "primary" anahtar kelimesini kullanın.
İsteğe bağlı sorgu parametreleri
alwaysIncludeEmail boolean Desteği sonlandırıldı ve yoksayıldı.
eventTypes string Döndürülecek etkinlik türleri. İsteğe bağlı. Bu parametre, farklı türde etkinlikler döndürmek için birden çok kez tekrarlanabilir. Ayarlanmazsa tüm etkinlik türlerini döndürür.

Kabul edilen değerler şunlardır:
  • "birthday": Yıllık olarak tekrarlanan özel tüm gün etkinlikleri.
  • "default": Normal etkinlikler.
  • "focusTime": Odaklanma zamanı etkinlikleri.
  • "fromGmail": Gmail'den etkinlikler.
  • "outOfOffice": Ofis dışında etkinlikleri.
  • "workingLocation": Çalışma yeri etkinlikleri.
iCalUID string Yanıtta sağlanacak iCalendar biçiminde bir etkinlik kimliği belirtir. İsteğe bağlı. Bir etkinliği iCalendar kimliğine göre aramak istiyorsanız bunu kullanın.
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ı.
maxResults integer Bir sonuç sayfasında döndürülen maksimum etkinlik sayısı. Sonuç sayfasında etkinlik sayısı bu değerden az olabilir veya sorgu ile eşleşen daha fazla etkinlik olsa bile hiç etkinlik olmayabilir. Eksik sayfalar, yanıtta boş olmayan bir nextPageToken alanı varsa tespit edilebilir. Varsayılan değer 250 etkinliktir. Sayfa boyutu hiçbir zaman 2.500'den fazla etkinlik olamaz. İsteğe bağlı.
orderBy string Sonuçta döndürülen etkinliklerin sırası. İsteğe bağlı. Varsayılan değer, belirtilmemiş ve sabit bir sipariştir.

Kabul edilen değerler şunlardır:
  • "startTime": Başlangıç tarihine/saatine göre sıralama (artan). Bu yalnızca tek bir etkinlik sorgulanırken kullanılabilir (yani singleEvents parametresi True değerine sahipse).
  • "updated": Son değiştirme zamanına göre sıralama (artan).
pageToken string Döndürülecek sonuç sayfasını belirten jeton. İsteğe bağlı.
privateExtendedProperty string propertyName=value olarak belirtilen genişletilmiş özellik kısıtlaması. Yalnızca özel mülklerle eşleşir. Bu parametre, verilen tüm kısıtlamalarla eşleşen etkinlikleri döndürmek için birden çok kez tekrarlanabilir.
q string Şu alanlarda bu terimlerle eşleşen etkinlikleri bulmak için serbest metin arama terimleri:
  • summary
  • description
  • location
  • katılımcının displayName
  • katılımcının email
  • düzenleyen kullanıcının displayName
  • düzenleyenin email
  • workingLocationProperties.officeLocation.buildingId
  • workingLocationProperties.officeLocation.deskId
  • workingLocationProperties.officeLocation.label
  • workingLocationProperties.customLocation.label

Bu arama terimleri, önceden tanımlanmış anahtar kelimeleri çalışma yeri, ofis dışında ve odaklanma zamanı etkinliklerinin tüm görüntüleme başlığı çevirileriyle de eşleştirir. Örneğin, "Ofis" veya "Bureau" araması, officeLocation türündeki çalışma yeri etkinliklerini döndürürken, "Ofis dışında" veya "Abwesend" araması, ofis dışındaki etkinlikleri döndürür. İsteğe bağlı.

sharedExtendedProperty string propertyName=value olarak belirtilen genişletilmiş mülk kısıtlaması. Yalnızca paylaşılan tesislerle eşleşir. Bu parametre, verilen tüm kısıtlamalarla eşleşen etkinlikleri döndürmek için birden çok kez tekrarlanabilir.
showDeleted boolean Silinen etkinliklerin sonuca dahil edilip edilmeyeceğini (status ile "cancelled" değerine eşittir). showDeleted ve singleEvents değerlerinin ikisi de False ise yinelenen etkinliklerin iptal edilen örnekleri (temel yinelenen etkinlik hariç) yine dahil edilir. Hem showDeleted hem de singleEvents doğruysa yalnızca silinen etkinliklerin tek seferlik örnekleri (temel alınan düzenli etkinlikler değil) döndürülür. İsteğe bağlı. Varsayılan değer False'tır.
showHiddenInvitations boolean Gizli davetiyelerin sonuca dahil edilip edilmeyeceğini belirtir. İsteğe bağlı. Varsayılan değer False'tır.
singleEvents boolean Yinelenen etkinliklerin örneklere genişletilip genişletilmeyeceği ve yalnızca tek seferlik etkinliklerin ve yinelenen etkinliklerin örneklerini döndürülüp döndürülmeyeceği (yinelenen etkinliklerin temelinin döndürülmeyeceği) İsteğe bağlı. Varsayılan değer False'tır.
syncToken string Önceki liste isteğinin sonuçlarının son sayfasında döndürülen nextSyncToken alanından alınan jeton. Bu liste isteği sonucunda yalnızca o tarihten sonra değişen girişler gösterilir. Önceki liste isteğinden bu yana silinen tüm etkinlikler her zaman sonuç kümesinde olur ve showDeleted değerinin False olarak ayarlanmasına izin verilmez.
İstemci durumunun tutarlılığını sağlamak için nextSyncToken ile birlikte belirtilemeyen birkaç sorgu parametresi vardır.

Bunlar:
  • iCalUID
  • orderBy
  • privateExtendedProperty
  • q
  • sharedExtendedProperty
  • timeMin
  • timeMax
  • updatedMin
Tanımlanmamış davranışları önlemek için diğer tüm sorgu parametreleri, ilk senkronizasyonla aynı olmalıdır. syncToken süresi dolarsa, sunucu bir 410 GONE yanıt koduyla yanıt verir ve istemcinin depolama alanını temizlemesi ve syncToken olmadan tam bir senkronizasyon gerçekleştirmesi gerekir. Artımlı senkronizasyon hakkında
daha fazla bilgi edinin.
İsteğe bağlı. Varsayılan olarak tüm girişler döndürülür.
timeMax datetime Etkinliğin filtreleneceği başlangıç zamanı için üst sınır (hariç). İsteğe bağlı. Varsayılan olarak başlangıç saatine göre filtreleme yapılmaz. Zorunlu saat dilimi ofseti içeren bir RFC3339 zaman damgası olmalıdır. Örneğin, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milisaniyeler sağlanabilir ancak yoksayılır. timeMin ayarlanmışsa timeMax, timeMin'ten büyük olmalıdır.
timeMin datetime Filtrelemek için bir etkinliğin bitiş zamanı için alt sınır (hariç). İsteğe bağlı. Varsayılan olarak bitiş zamanına göre filtreleme yapılmaz. Zorunlu saat dilimi farkını içeren bir RFC33339 zaman damgası olmalıdır. Örneğin, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milisaniyeler sağlanabilir ancak yoksayılır. timeMax ayarlanmışsa timeMin, timeMax'ten küçük olmalıdır.
timeZone string Yanıtta kullanılan saat dilimi. İsteğe bağlı. Varsayılan ayar, takvimin saat dilimidir.
updatedMin datetime Filtreleme için etkinliğin son değiştirme zamanına (RFC3339 zaman damgası olarak) ait alt sınır. Belirtilen tarihten sonra silinen girişler, showDeleted'ten bağımsız olarak her zaman dahil edilir. İsteğe bağlı. Varsayılan olarak son değiştirilme zamanına göre filtreleme yapılmaz.

Yetkilendirme

Bu istek, aşağıdaki kapsamlardan en az birinde yetkilendirme yapılmasına olanak tanır:

Kapsam
https://www.googleapis.com/auth/calendar.readonly
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.events.readonly
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

Bu yöntemle istek gövdesi sağlamayınız.

Yanıt

Başarılı olursa bu yöntem, aşağıdaki yapıya sahip bir yanıt gövdesi döndürür:

{
  "kind": "calendar#events",
  "etag": etag,
  "summary": string,
  "description": string,
  "updated": datetime,
  "timeZone": string,
  "accessRole": string,
  "defaultReminders": [
    {
      "method": string,
      "minutes": integer
    }
  ],
  "nextPageToken": string,
  "nextSyncToken": string,
  "items": [
    events Resource
  ]
}
Mülk adı Değer Açıklama Notlar
kind string Koleksiyonun türü ("calendar#events").
etag etag Koleksiyonun ETag'ı.
summary string Takvim başlığı. Salt okunur.
description string Takvim açıklaması. Salt okunur.
updated datetime Takvimde son değişiklik zamanı (RFC3339 zaman damgası olarak). Salt okunur.
timeZone string Takvimin saat dilimi. Salt okunur.
accessRole string Kullanıcının bu takvim için erişim rolü. Salt okunur. Olası değerler:
  • "none" - Kullanıcının erişimi yok.
  • "freeBusyReader": Kullanıcı, müsaitlik durumu bilgilerine okuma erişimine sahiptir.
  • "reader": Kullanıcının takvime okuma erişimi vardır. Gizli etkinlikler, okuyucu erişimi olan kullanıcılara gösterilir ancak etkinlik ayrıntıları gizlenir.
  • "writer": Kullanıcının takvime okuma ve yazma erişimi vardır. Gizli etkinlikler, yazma erişimi olan kullanıcılara gösterilir ve etkinlik ayrıntıları gösterilir.
  • "owner": Kullanıcı, takvimin sahibidir. Bu rol, ACL'leri görme ve değiştirme özelliğinin yanı sıra yazar rolünün tüm izinlerine sahiptir.
defaultReminders[] list Kimliği doğrulanmış kullanıcı için takvimdeki varsayılan hatırlatıcılar. Bu hatırlatıcılar, bu takvimdeki açıkça geçersiz kılmadıkları (yani reminders.useDefault değeri True olarak ayarlanmamış) tüm etkinlikler için geçerlidir.
defaultReminders[].method string Bu hatırlatıcının kullandığı yöntem. Olası değerler:
  • "email": Hatırlatmalar e-postayla gönderilir.
  • "popup" - Hatırlatıcılar bir kullanıcı arayüzü pop-up'ı aracılığıyla gönderilir.

Hatırlatıcı eklerken gereklidir.

yazabilir
defaultReminders[].minutes integer Etkinlik başlamadan önce hatırlatıcının tetiklenmesi gereken dakika sayısı. Geçerli değerler 0 ile 40.320 (dakikada 4 hafta) arasındadır.

Hatırlatıcı eklerken gereklidir.

yazabilir
nextPageToken string Bu sonucun bir sonraki sayfasına erişmek için kullanılan jeton. Başka sonuç yoksa atlanır. Bu durumda nextSyncToken sağlanır.
items[] list Takvimdeki etkinliklerin listesi.
nextSyncToken string Bu sonuç döndürüldükten sonra yalnızca değişen girişleri almak için daha sonraki bir zamanda kullanılan jeton. Başka sonuçlar varsa atlanır. Bu durumda nextPageToken sağlanı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.Events;

// ...

// Initialize Calendar service with valid OAuth credentials
Calendar service = new Calendar.Builder(httpTransport, jsonFactory, credentials)
    .setApplicationName("applicationName").build();

// Iterate over the events in the specified calendar
String pageToken = null;
do {
  Events events = service.events().list('primary').setPageToken(pageToken).execute();
  List<Event> items = events.getItems();
  for (Event event : items) {
    System.out.println(event.getSummary());
  }
  pageToken = events.getNextPageToken();
} while (pageToken != null);

Python

Python istemci kitaplığını kullanır.

page_token = None
while True:
  events = service.events().list(calendarId='primary', pageToken=page_token).execute()
  for event in events['items']:
    print event['summary']
  page_token = events.get('nextPageToken')
  if not page_token:
    break

PHP

PHP istemci kitaplığını kullanır.

$events = $service->events->listEvents('primary');

while(true) {
  foreach ($events->getItems() as $event) {
    echo $event->getSummary();
  }
  $pageToken = $events->getNextPageToken();
  if ($pageToken) {
    $optParams = array('pageToken' => $pageToken);
    $events = $service->events->listEvents('primary', $optParams);
  } else {
    break;
  }
}

Ruby

Ruby istemci kitaplığını kullanır.

page_token = nil
begin
  result = client.list_events('primary', page_token: page_token)
  result.items.each do |e|
    print e.summary + "\n"
  end
  if result.next_page_token != page_token
    page_token = result.next_page_token
  else
    page_token = nil
  end
end while !page_token.nil?

Deneyin!

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