Events: list

Menampilkan acara pada kalender yang ditentukan. Coba sekarang atau lihat contohnya.

Permintaan

Permintaan HTTP

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

Parameter

Nama parameter Nilai Deskripsi
Parameter jalur
calendarId string ID kalender. Untuk mengambil ID kalender, panggil metode calendarList.list. Jika Anda ingin mengakses kalender utama dari pengguna yang saat ini sudah login, gunakan kata kunci "primary".
Parameter kueri opsional
alwaysIncludeEmail boolean Tidak digunakan lagi dan diabaikan.
eventTypes string Jenis peristiwa yang akan ditampilkan. Opsional. Parameter ini dapat diulang beberapa kali untuk menampilkan peristiwa dari jenis yang berbeda. Jika tidak disetel, semua jenis peristiwa akan ditampilkan.

Nilai yang dapat diterima adalah:
  • "default": Acara rutin.
  • "focusTime": Acara waktu fokus.
  • "outOfOffice": Acara tidak di kantor.
  • "workingLocation": Peristiwa lokasi kerja.
iCalUID string Menentukan ID acara dalam format iKalender yang akan disediakan dalam respons. Opsional. Gunakan ini jika Anda ingin menelusuri acara berdasarkan ID iCalendar-nya.
maxAttendees integer Jumlah maksimum peserta yang akan disertakan dalam respons. Jika jumlah tamu melebihi jumlah yang ditentukan, hanya peserta yang akan dikembalikan. Opsional.
maxResults integer Jumlah maksimum peristiwa yang ditampilkan pada satu halaman hasil. Jumlah peristiwa di halaman hasil mungkin kurang dari nilai ini, atau tidak sama sekali, meskipun ada lebih banyak peristiwa yang cocok dengan kueri. Halaman yang tidak lengkap dapat dideteksi oleh kolom nextPageToken yang tidak kosong dalam respons. Secara default, nilainya adalah 250 peristiwa. Ukuran halaman tidak boleh lebih dari 2.500 peristiwa. Opsional.
orderBy string Urutan peristiwa yang ditampilkan dalam hasil. Opsional. Defaultnya adalah urutan stabil dan tidak ditentukan.

Nilai yang dapat diterima adalah:
  • "startTime": Mengurutkan berdasarkan tanggal/waktu mulai (menaik). Hal ini hanya tersedia saat membuat kueri peristiwa tunggal (yaitu, parameter singleEvents bernilai Benar)
  • "updated": Mengurutkan berdasarkan waktu terakhir diubah (menaik).
pageToken string Token yang menentukan halaman hasil yang akan ditampilkan. Opsional.
privateExtendedProperty string Batasan properti yang diperluas ditentukan sebagai propertyName=value. Hanya cocok dengan properti pribadi. Parameter ini dapat diulang beberapa kali untuk menampilkan peristiwa yang cocok dengan semua batasan yang diberikan.
q string Istilah penelusuran teks bebas untuk menemukan peristiwa yang cocok dengan istilah tersebut di kolom berikut:
  • summary
  • description
  • location
  • displayName tamu
  • email tamu
  • displayName penyelenggara
  • email penyelenggara
  • workingLocationProperties.officeLocation.buildingId
  • workingLocationProperties.officeLocation.deskId
  • workingLocationProperties.officeLocation.label
  • workingLocationProperties.customLocation.label

Istilah penelusuran ini juga mencocokkan kata kunci yang telah ditetapkan dengan semua terjemahan judul tampilan dari lokasi kerja, tidak di kantor, dan acara waktu fokus. Misalnya, menelusuri "Kantor" atau "Bureau" akan menampilkan acara lokasi kerja dari jenis officeLocation, sedangkan menelusuri "Tidak di kantor" atau "Abwesend" akan menampilkan acara tidak di kantor. Opsional.

sharedExtendedProperty string Batasan properti yang diperluas ditentukan sebagai propertyName=value. Hanya cocok dengan properti bersama. Parameter ini dapat diulang beberapa kali untuk menampilkan peristiwa yang cocok dengan semua batasan yang diberikan.
showDeleted boolean Apakah akan menyertakan peristiwa yang dihapus (dengan status sama dengan "cancelled") dalam hasil. Pembatalan kejadian dari acara rutin (tetapi bukan acara rutin yang mendasarinya) akan tetap disertakan jika showDeleted dan singleEvents bernilai Salah. Jika showDeleted dan singleEvents bernilai Benar, hanya satu instance dari peristiwa yang dihapus (tetapi bukan peristiwa berulang pokoknya) yang ditampilkan. Opsional. Nilai defaultnya adalah Salah (False).
showHiddenInvitations boolean Apakah akan menyertakan undangan tersembunyi dalam hasil. Opsional. Nilai defaultnya adalah Salah (False).
singleEvents boolean Apakah akan memperluas acara rutin ke beberapa instance dan hanya menampilkan satu acara sekali pakai dan kejadian berulang, tetapi bukan kejadian berulang yang mendasarinya itu sendiri. Opsional. Nilai defaultnya adalah Salah (False).
syncToken string Token yang diperoleh dari kolom nextSyncToken yang ditampilkan di halaman terakhir hasil dari permintaan daftar sebelumnya. Kode ini membuat hasil permintaan daftar ini hanya berisi entri yang telah berubah sejak saat itu. Semua peristiwa yang dihapus karena permintaan daftar sebelumnya akan selalu berada dalam kumpulan hasil dan tidak diizinkan untuk menetapkan showDeleted ke Salah (False).
Ada beberapa parameter kueri yang tidak dapat ditentukan bersama dengan nextSyncToken untuk memastikan konsistensi status klien.

Ini adalah:
  • iCalUID
  • orderBy
  • privateExtendedProperty
  • q
  • sharedExtendedProperty
  • timeMin
  • timeMax
  • updatedMin
Semua parameter kueri lainnya harus sama seperti untuk sinkronisasi awal guna menghindari perilaku yang tidak ditentukan. Jika syncToken sudah tidak berlaku, server akan merespons dengan kode respons 410 GONE dan klien harus menghapus penyimpanannya serta melakukan sinkronisasi penuh tanpa syncToken apa pun.
Pelajari lebih lanjut tentang sinkronisasi inkremental.
Opsional. Defaultnya adalah menampilkan semua entri.
timeMax datetime Batas atas (eksklusif) untuk waktu mulai acara yang akan difilter. Opsional. Setelan defaultnya adalah tidak memfilter berdasarkan waktu mulai. Harus berupa stempel waktu RFC3339 dengan offset zona waktu wajib, misalnya, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milidetik mungkin diberikan, tetapi akan diabaikan. Jika timeMin ditetapkan, timeMax harus lebih besar dari timeMin.
timeMin datetime Batas bawah (eksklusif) untuk waktu berakhir acara yang akan difilter. Opsional. Setelan defaultnya adalah tidak memfilter berdasarkan waktu berakhir. Harus berupa stempel waktu RFC3339 dengan offset zona waktu wajib, misalnya, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milidetik mungkin diberikan, tetapi akan diabaikan. Jika timeMax ditetapkan, timeMin harus lebih kecil dari timeMax.
timeZone string Zona waktu yang digunakan dalam respons. Opsional. Setelan default-nya adalah zona waktu kalender.
updatedMin datetime Batas bawah untuk waktu modifikasi terakhir peristiwa (sebagai stempel waktu RFC3339) untuk memfilter. Jika ditentukan, entri yang dihapus sejak waktu tersebut akan selalu disertakan terlepas dari showDeleted. Opsional. Setelan defaultnya adalah bukan memfilter berdasarkan waktu terakhir diubah.

Otorisasi

Permintaan ini memungkinkan otorisasi dengan setidaknya salah satu cakupan berikut:

Cakupan
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

Untuk informasi selengkapnya, lihat halaman autentikasi dan otorisasi.

Isi permintaan

Jangan memberikan isi permintaan dengan metode ini.

Respons

Jika berhasil, metode ini akan menampilkan isi respons dengan struktur berikut:

{
  "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
  ]
}
Nama properti Nilai Deskripsi Catatan
kind string Jenis koleksi ("calendar#events").
etag etag ETag koleksi.
summary string Judul kalender. Hanya baca.
description string Deskripsi kalender. Hanya baca.
updated datetime Waktu modifikasi terakhir kalender (sebagai stempel waktu RFC3339). Hanya baca.
timeZone string Zona waktu kalender. Hanya baca.
accessRole string Peran akses pengguna untuk kalender ini. Hanya baca. Kemungkinan nilainya adalah:
  • "none" - Pengguna tidak memiliki akses.
  • "freeBusyReader" - Pengguna memiliki akses membaca ke informasi senggang/sibuk.
  • "reader" - Pengguna memiliki akses baca ke kalender. Acara pribadi akan terlihat oleh pengguna dengan akses pembaca, tetapi detail acara akan disembunyikan.
  • "writer" - Pengguna memiliki akses baca dan tulis ke kalender. Acara pribadi akan terlihat oleh pengguna dengan akses penulis, dan detail acara akan terlihat.
  • "owner" - Pengguna memiliki kepemilikan kalender. Peran ini memiliki semua izin peran penulis dengan kemampuan tambahan untuk melihat dan memanipulasi ACL.
defaultReminders[] list Pengingat default di kalender untuk pengguna terautentikasi. Pengingat ini berlaku untuk semua acara di kalender ini yang tidak secara eksplisit menggantinya (misalnya, reminders.useDefault tidak disetel ke Benar).
defaultReminders[].method string Metode yang digunakan pengingat ini. Kemungkinan nilainya adalah:
  • "email" - Pengingat dikirim melalui email.
  • "popup" - Pengingat dikirim melalui pop-up UI.

Wajib diisi saat menambahkan pengingat.

dapat ditulis
defaultReminders[].minutes integer Jumlah menit sebelum mulainya acara saat pengingat harus dipicu. Nilai yang valid adalah antara 0 dan 40320 (4 minggu dalam menit).

Wajib diisi saat menambahkan pengingat.

dapat ditulis
nextPageToken string Token yang digunakan untuk mengakses halaman berikutnya dari hasil ini. Dihilangkan jika tidak ada hasil lebih lanjut yang tersedia, dalam hal ini nextSyncToken akan diberikan.
items[] list Daftar acara di kalender.
nextSyncToken string Token yang digunakan di waktu mendatang untuk mengambil hanya entri yang telah berubah sejak hasil ini ditampilkan. Dihilangkan jika hasil lebih lanjut tersedia, sehingga nextPageToken akan diberikan.

Contoh

Catatan: Contoh kode yang tersedia untuk metode ini tidak merepresentasikan semua bahasa pemrograman yang didukung (lihat halaman library klien untuk mengetahui daftar bahasa yang didukung).

Java

Menggunakan library klien Java.

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

Menggunakan library klien Python.

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

Menggunakan library klien PHP.

$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

Menggunakan library klien Ruby.

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?

Cobalah!

Gunakan APIs Explorer di bawah untuk memanggil metode ini pada data live dan melihat responsnya.