Events: instances

Renvoie les instances de l'événement récurrent spécifié. Essayez maintenant ou voir un exemple

Requête

Requête HTTP

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

Paramètres

Nom du paramètre Valeur Description
Paramètres de chemin d'accès
calendarId string Identifiant de l'agenda. Pour récupérer les ID d'agenda, appelez la méthode calendarList.list. Si vous souhaitez accéder à l'agenda principal de l'utilisateur actuellement connecté, utilisez le mot clé "primary".
eventId string Identifiant de l'événement récurrent.
Paramètres de requête facultatifs
alwaysIncludeEmail boolean Obsolète et ignoré. Une valeur est toujours renvoyée dans le champ email pour l'organisateur, le créateur et les participants, même si aucune adresse e-mail réelle n'est disponible (c'est-à-dire qu'une valeur générée et non fonctionnelle est fournie).
maxAttendees integer Nombre maximal de participants à inclure dans la réponse. Si le nombre de participants est supérieur au nombre spécifié, seul le participant est renvoyé. Facultatif.
maxResults integer Nombre maximal d'événements renvoyés sur une page de résultats. La valeur par défaut est 250 événements. La taille de la page ne peut jamais dépasser 2 500 événements. Facultatif.
originalStart string Heure de début d'origine de l'instance dans le résultat. Facultatif.
pageToken string Jeton spécifiant la page de résultats à renvoyer. Facultatif.
showDeleted boolean Indique si les événements supprimés (avec status égal à "cancelled") doivent être inclus dans le résultat. Les instances annulées d'événements récurrents sont toujours incluses si singleEvents est défini sur "False". Facultatif. La valeur par défaut est "False" (faux).
timeMax datetime Limite supérieure (exclusive) de l'heure de début d'un événement à filtrer. Facultatif. Par défaut, le filtre par heure de début n'est pas appliqué. Doit être un code temporel RFC3339 avec un décalage de fuseau horaire obligatoire.
timeMin datetime Limite inférieure (inclusive) de l'heure de fin d'un événement à filtrer. Facultatif. Par défaut, le filtre par heure de fin n'est pas appliqué. Doit être un code temporel RFC3339 avec un décalage de fuseau horaire obligatoire.
timeZone string Fuseau horaire utilisé dans la réponse. Facultatif. La valeur par défaut est le fuseau horaire de l'agenda.

Autorisation

Cette requête autorise l'autorisation avec au moins l'une des portées suivantes:

Portée
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

Pour en savoir plus, consultez la page Authentification et autorisation.

Corps de la requête

Ne spécifiez pas de corps de requête pour cette méthode.

Réponse

Si la requête aboutit, cette méthode renvoie un corps de réponse présentant la structure suivante :

{
  "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
  ]
}
Nom de propriété Valeur Description Remarques
kind string Type de la collection ("calendar#events").
etag etag ETag de la collection.
summary string Titre de l'agenda. Lecture seule.
description string Description du calendrier. Lecture seule.
updated datetime Heure de la dernière modification du calendrier (au format RFC3339). Lecture seule.
timeZone string Fuseau horaire de l'agenda. Lecture seule.
accessRole string Rôle d'accès de l'utilisateur pour cet agenda. Lecture seule. Les valeurs possibles sont les suivantes:
  • "none" : l'utilisateur n'a pas accès à la ressource.
  • "freeBusyReader" : l'utilisateur dispose d'un accès en lecture aux informations de disponibilité.
  • "reader" : l'utilisateur dispose d'un accès en lecture à l'agenda. Les événements privés s'affichent pour les utilisateurs disposant d'un accès lecteur, mais les détails de l'événement sont masqués.
  • "writer" : l'utilisateur dispose d'un accès en lecture et en écriture à l'agenda. Les événements privés s'affichent pour les utilisateurs disposant d'un accès en tant qu'auteur, et leurs détails sont visibles.
  • "owner" : l'utilisateur est propriétaire de l'agenda. Ce rôle dispose de toutes les autorisations du rôle "Rédacteur", avec la possibilité supplémentaire de consulter et de manipuler les ACL.
defaultReminders[] list Rappels par défaut dans l'agenda de l'utilisateur authentifié. Ces rappels s'appliquent à tous les événements de cet agenda qui ne les remplacent pas explicitement (c'est-à-dire que reminders.useDefault n'est pas défini sur "True").
defaultReminders[].method string Méthode utilisée par ce rappel. Les valeurs possibles sont les suivantes:
  • "email" : les rappels sont envoyés par e-mail.
  • "popup" : les rappels sont envoyés via une fenêtre pop-up de l'UI.

Obligatoire lors de l'ajout d'un rappel.

accessible en écriture
defaultReminders[].minutes integer Nombre de minutes avant le début de l'événement auquel le rappel doit être déclenché. Les valeurs valides sont comprises entre 0 et 40 320 (4 semaines en minutes).

Obligatoire lors de l'ajout d'un rappel.

accessible en écriture
nextPageToken string Jeton utilisé pour accéder à la page suivante de ce résultat. Omis si aucun autre résultat n'est disponible, auquel cas nextSyncToken est fourni.
items[] list Liste des événements de l'agenda.
nextSyncToken string Jeton utilisé ultérieurement pour ne récupérer que les entrées qui ont changé depuis le renvoi de ce résultat. Omis si d'autres résultats sont disponibles, auquel cas nextPageToken est fourni.

Exemples

Remarque : Les langages de programmation compatibles ne figurent pas tous dans les exemples de code présentés pour cette méthode (consultez la page Bibliothèques clientes pour obtenir la liste des langages compatibles).

Java

Utilise la bibliothèque cliente 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

Utilise la bibliothèque cliente 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

Utilise la bibliothèque cliente 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

Utilise la bibliothèque cliente 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?

Essayer

Utilisez l'explorateur d'API ci-dessous pour appeler cette méthode sur des données en direct, puis observez la réponse.