Events: instances

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

Prośba

Żą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 kalendarza głównego aktualnie zalogowanego użytkownika, użyj słowa kluczowego „primary”.
eventId string Identyfikator zdarzenia cyklicznego.
Opcjonalne parametry zapytania
alwaysIncludeEmail boolean Wycofano i ignorowano. W polu email organizatora, twórca i uczestnicy zawsze zwracana jest wartość, nawet jeśli nie będzie dostępny żaden prawdziwy adres e-mail (tzn. zostanie podany wygenerowany, niedziałający adres).
maxAttendees integer Maksymalna liczba uczestników, których można uwzględnić w odpowiedzi. Jeśli liczba uczestników jest większa niż określona, zwracany jest tylko uczestnik. Opcjonalnie.
maxResults integer Maksymalna liczba zdarzeń zwróconych na jednej stronie wyników. Domyślnie ma 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 stronę wyników, która ma zostać zwrócona. Opcjonalnie.
showDeleted boolean Określa, czy w wyniku ma uwzględnić usunięte zdarzenia (przy czym status równa się „cancelled”). Anulowane wystąpienia wydarzeń cyklicznych będą nadal uwzględniane, jeśli singleEvents ma wartość Fałsz. Opcjonalnie. Wartością domyślną jest False (Fałsz).
timeMax datetime Górna granica (wyłącznie) czasu rozpoczęcia zdarzenia, według którego można filtrować. Opcjonalnie. Domyślnie nie można filtrować według godziny rozpoczęcia. Musi to być sygnatura czasowa RFC3339 z wymaganym przesunięciem strefy czasowej.
timeMin datetime Dolna granica (włącznie z tym dniem) czasu zakończenia zdarzenia, według którego ma być filtrowany. Opcjonalnie. Domyślnie filtr nie jest filtrowany według czasu zakończenia. Musi to być sygnatura czasowa RFC3339 z wymaganym przesunięciem strefy czasowej.
timeZone string Strefa czasowa używana w odpowiedzi. Opcjonalnie. Domyślną wartością jest strefa czasowa kalendarza.

Upoważnienie

To żądanie 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

Więcej informacji znajdziesz na stronie uwierzytelniania i autoryzacji.

Treść żądania

Nie podawaj treści żądania z tą metodą.

Odpowiedź

Jeśli operacja się uda, metoda zwróci odpowiedź w następującej 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 Nazwa 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 dostęp do odczytu informacji o stanie Wolny/Zajęty.
  • reader” – użytkownik ma uprawnienia do odczytu kalendarza. Wydarzenia prywatne będą widoczne dla użytkowników z uprawnieniami do odczytu, ale szczegóły wydarzenia będą ukryte.
  • writer” – użytkownik ma uprawnienia do odczytu i zapisu w kalendarzu. Wydarzenia prywatne będą widoczne dla użytkowników z uprawnieniami do zapisu, a szczegóły wydarzeń będą widoczne.
  • owner” – użytkownik jest właścicielem kalendarza. Ta rola ma wszystkie uprawnienia roli zapisującego, a także możliwość wyświetlania i modyfikowania list kontroli dostępu.
defaultReminders[] list Domyślne przypomnienia w kalendarzu dla uwierzytelnionego użytkownika. Te przypomnienia dotyczą wszystkich wydarzeń w tym kalendarzu, które nie mają bezpośrednio zastępowanych (czyli dla reminders.useDefault nie mają wartości Prawda).
defaultReminders[].method string Metoda używana przez to przypomnienie. Możliwe wartości:
  • email” – przypomnienia są wysyłane e-mailem.
  • popup” – przypomnienia są wysyłane w wyskakującym okienku w interfejsie.

Wymagane podczas dodawania przypomnienia.

z możliwością zapisu
defaultReminders[].minutes integer Liczba minut przed rozpoczęciem wydarzenia, na którą powinno zostać aktywowane przypomnienie. Prawidłowe wartości mieszczą się w zakresie od 0 do 40320 (4 tygodnie w minutach).

Wymagane podczas dodawania przypomnienia.

z możliwością zapisu
nextPageToken string Token używany do uzyskania dostępu do następnej strony tego wyniku. Pominięta, jeśli nie ma więcej wyników. W takim przypadku dostarczana jest wartość nextSyncToken.
items[] list Lista wydarzeń w kalendarzu.
nextSyncToken string Token używany później do pobrania tylko tych wpisów, które zmieniły się od czasu zwrócenia tego wyniku. Pominięta, jeśli dostępne są dalsze wyniki. W takim przypadku dostarczana jest wartość 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

Używa biblioteki klienta dla języka 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

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

Użyj Eksploratora interfejsów API poniżej, aby wywołać tę metodę na aktywnych danych i zobaczyć odpowiedź.