Events: instances

Zwraca wystąpienia określonego wydarzenia cyklicznego. Wypróbuj teraz lub zobacz przykład.

Żądanie

Żądanie HTTP

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

Parametry

Nazwa parametru Wartość Opis
Parametry ścieżki
calendarId string Identyfikator kalendarza. Aby pobrać identyfikatory kalendarzy, wywołaj metodę calendarList.list. Jeśli chcesz uzyskać dostęp do głównego kalendarza aktualnie zalogowanego użytkownika, użyj słowa kluczowego „primary”.
eventId string Identyfikator wydarzenia cyklicznego.
Parametry opcjonalne zapytania
alwaysIncludeEmail boolean Ta wersja jest wycofana i ignorowana. W polu email zawsze będzie zwracana wartość dla organizatora, twórcy i uczestników, nawet jeśli nie ma prawdziwego adresu e-mail (czyli zostanie podana wygenerowana, niedziałająca wartość).
maxAttendees integer Maksymalna liczba uczestników, których można uwzględnić w odpowiedzi. Jeśli liczba uczestników jest większa od określonej, zwracany jest tylko jeden uczestnik. Opcjonalnie:
maxResults integer Maksymalna liczba zdarzeń zwracanych na jednej stronie wyników. Domyślna wartość to 250 zdarzeń. Rozmiar strony nie może przekraczać 2500 zdarzeń. Opcjonalnie:
originalStart string Pierwotny czas rozpoczęcia instancji w wyniku. Opcjonalnie:
pageToken string Token określający, która strona z wynikami ma zostać zwrócona. Opcjonalnie:
showDeleted boolean Określa, czy w wyniku mają być uwzględniane usunięte zdarzenia (z wartością status równą „cancelled”). Anulowane wystąpienia cyklicznych zdarzeń będą nadal uwzględniane, jeśli parametr singleEvents ma wartość False. Opcjonalnie: Wartość domyślna to False (fałsz).
timeMax datetime Górna granica (nie wliczając) czasu rozpoczęcia zdarzenia, według którego chcesz filtrować dane. Opcjonalnie: Domyślnie filtrowanie według czasu rozpoczęcia jest wyłączone. Musi być sygnaturą czasową zgodną z RFC 3339 z obowiązkowym przesunięciem strefy czasowej.
timeMin datetime Dolna granica (włącznie) czasu zakończenia zdarzenia, według którego chcesz filtrować. Opcjonalnie: Domyślnie filtrowanie według czasu zakończenia jest wyłączone. Musi być sygnaturą czasową zgodną ze standardem RFC 3339 z obowiązkowym przesunięciem strefy czasowej.
timeZone string Strefa czasowa używana w odpowiedzi. Opcjonalnie: Domyślnie jest to strefa czasowa kalendarza.

Autoryzacja

Ta prośba umożliwia autoryzację z co najmniej jednym z tych zakresów:

Zakres
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
https://www.googleapis.com/auth/calendar.app.created
https://www.googleapis.com/auth/calendar.events.freebusy
https://www.googleapis.com/auth/calendar.events.owned
https://www.googleapis.com/auth/calendar.events.owned.readonly
https://www.googleapis.com/auth/calendar.events.public.readonly

Więcej informacji znajdziesz na stronie Uwierzytelnianie i autoryzacja.

Treść żądania

W przypadku tej metody nie podawaj treści żądania.

Odpowiedź

Jeśli operacja się powiedzie, metoda zwróci odpowiedź o tej strukturze:

{
  "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
  ]
}
Nazwa usługi Wartość Opis Uwagi
kind string Typ kolekcji („calendar#events”).
etag etag ETag kolekcji.
summary string Tytuł kalendarza. Tylko do odczytu.
description string Opis kalendarza. Tylko do odczytu.
updated datetime Czas ostatniej modyfikacji kalendarza (jako sygnatura czasowa RFC3339). Tylko do odczytu.
timeZone string Strefa czasowa kalendarza. Tylko do odczytu.
accessRole string Rola dostępu użytkownika do tego kalendarza. Tylko do odczytu. Możliwe wartości:
  • none” – użytkownik nie ma dostępu.
  • freeBusyReader” – użytkownik ma uprawnienia tylko do odczytu informacji o stanie Wolny/Zajęty.
  • reader” – użytkownik ma dostęp tylko do odczytu kalendarza. Wydarzenia prywatne będą widoczne dla użytkowników z dostępem tylko do odczytu, ale szczegóły wydarzeń będą ukryte.
  • writer” – użytkownik ma uprawnienia do odczytu i zapisu w kalendarzu. Wydarzenia prywatne będą widoczne dla użytkowników z dostępem do funkcji pisania, a szczegóły wydarzeń będą widoczne.
  • owner” – użytkownik jest właścicielem kalendarza. Ta rola ma wszystkie uprawnienia roli autora, a dodatkowo umożliwia wyświetlanie i modyfikowanie list dostępu.
defaultReminders[] list Domyślne przypomnienia w kalendarzu dla uwierzytelnionego użytkownika. Te przypomnienia dotyczą wszystkich wydarzeń w tym kalendarzu, które nie zastępują ich wprost (czyli nie mają ustawionego parametru reminders.useDefault na wartość Prawda).
defaultReminders[].method string Metoda używana przez ten przypomnienie. Możliwe wartości:
  • email” – przypomnienia są wysyłane pocztą e-mail.
  • popup” – przypomnienia są wysyłane przez wyskakujące okienko w interfejsie.

Wymagany podczas dodawania przypomnienia.

zapisywalny
defaultReminders[].minutes integer Liczba minut przed rozpoczęciem wydarzenia, w których przypomnienie powinno się aktywować. Dozwolone wartości to 0–40 320 (4 tygodnie w minutach).

Wymagany podczas dodawania przypomnienia.

zapisywalny
nextPageToken string Token używany do uzyskiwania dostępu do następnej strony z tymi wynikami. Pomijany, jeśli nie ma dostępnych dalszych wyników. W takim przypadku podawana jest wartość nextSyncToken.
items[] list Lista wydarzeń w kalendarzu.
nextSyncToken string Token używany w późniejszym czasie do pobierania tylko tych wpisów, które uległy zmianie od czasu zwrócenia tego wyniku. Pomijany, jeśli są dostępne inne wyniki, w którym przypadku jest podawany parametr nextPageToken.

Przykłady

Uwaga: dostępne dla tej metody przykłady kodu nie odzwierciedlają wszystkich obsługiwanych języków programowania. Listę obsługiwanych języków znajdziesz na stronie z bibliotekami klienta.

Java

Korzysta z biblioteki klienta 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

Korzysta z biblioteki klienta Pythona.

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

Używa biblioteki klienta 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

Używa biblioteki klienta 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?

Wypróbuj

Aby wywołać tę metodę na podstawie danych na żywo i zobaczyć odpowiedź, użyj narzędzia APIs Explorer.