Events: instances

Menampilkan instance acara berulang yang ditentukan. Coba sekarang atau lihat contohnya.

Permintaan

Permintaan HTTP

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

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 login, gunakan kata kunci "primary".
eventId string ID acara berulang.
Parameter kueri opsional
alwaysIncludeEmail boolean Tidak digunakan lagi dan diabaikan. Nilai akan selalu ditampilkan di kolom email untuk penyelenggara, pembuat, dan tamu, meskipun tidak ada alamat email sebenarnya yang tersedia (yaitu nilai yang tidak berfungsi akan diberikan).
maxAttendees integer Jumlah maksimum peserta yang akan disertakan dalam respons. Jika jumlah tamu melebihi jumlah yang ditentukan, hanya peserta yang akan ditampilkan. Opsional.
maxResults integer Jumlah maksimum peristiwa yang ditampilkan pada satu halaman hasil. Secara default, nilainya adalah 250 peristiwa. Ukuran halaman tidak boleh lebih dari 2.500 peristiwa. Opsional.
originalStart string Waktu mulai asli instance dalam hasil. Opsional.
pageToken string Token yang menentukan halaman hasil yang akan ditampilkan. Opsional.
showDeleted boolean Apakah akan menyertakan peristiwa yang dihapus (dengan status sama dengan "cancelled") dalam hasil. Instance acara berulang yang dibatalkan akan tetap disertakan jika singleEvents disetel ke Salah (False). Opsional. Default-nya adalah Salah.
timeMax datetime Batas atas (eksklusif) untuk waktu mulai acara yang akan difilter. Opsional. Setelan defaultnya adalah bukan memfilter berdasarkan waktu mulai. Harus berupa stempel waktu RFC3339 dengan offset zona waktu wajib.
timeMin datetime Batas bawah (inklusif) untuk waktu berakhir acara yang akan difilter. Opsional. Defaultnya adalah bukan memfilter berdasarkan waktu berakhir. Harus berupa stempel waktu RFC3339 dengan offset zona waktu wajib.
timeZone string Zona waktu yang digunakan dalam respons. Opsional. Setelan default-nya adalah zona waktu kalender.

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 ditampilkan kepada pengguna yang memiliki akses pembaca, tetapi detail acara akan disembunyikan.
  • "writer" - Pengguna memiliki akses baca dan tulis ke kalender. Acara pribadi akan terlihat oleh pengguna yang memiliki 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 oleh pengingat ini. Kemungkinan nilainya adalah:
  • "email" - Pengingat dikirim melalui email.
  • "popup" - Pengingat dikirim melalui pop-up UI.

Diperlukan saat menambahkan pengingat.

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

Diperlukan saat menambahkan pengingat.

dapat ditulis
nextPageToken string Token yang digunakan untuk mengakses halaman berikutnya dari hasil ini. Dihapus jika tidak ada hasil lebih lanjut yang tersedia, dalam hal ini nextSyncToken diberikan.
items[] list Daftar acara di kalender.
nextSyncToken string Token yang digunakan nanti untuk mengambil entri yang telah berubah sejak hasil ini dikembalikan. Dihapus jika tersedia hasil lebih lanjut, dalam hal ini 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 instances of a specific recurring event
String pageToken = null;
do {
  Events events =
      service.events().instances('primary', 'eventId').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().instances(calendarId='primary', eventId='eventId',
                                      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->instances('primary', "eventId");

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

Ruby

Menggunakan library klien Ruby.

page_token = nil
begin
  result = client.list_event_instances('primary', 'eventId')
  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 respons.