Events: instances

Retorna instâncias do evento recorrente especificado. Faça um teste agora ou veja um exemplo.

Solicitação

Solicitação HTTP

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

Parâmetros

Nome do parâmetro Valor Descrição
Parâmetros de caminho
calendarId string Identificador da agenda. Para extrair os IDs de agenda, chame o método calendarList.list. Se você quiser acessar a agenda principal do usuário conectado, use a palavra-chave "primary".
eventId string Identificador de evento recorrente.
Parâmetros de consulta opcionais
alwaysIncludeEmail boolean Descontinuado e ignorado. Um valor sempre será retornado no campo email para o organizador, o criador e os participantes, mesmo que nenhum endereço de e-mail real esteja disponível. Ou seja, um valor gerado e inválido será fornecido.
maxAttendees integer O número máximo de participantes a serem incluídos na resposta. Se houver mais participantes do que o número especificado, apenas o participante será retornado. Opcional.
maxResults integer Número máximo de eventos retornados em uma página de resultados. Por padrão, o valor é 250 eventos. O tamanho da página nunca pode ser maior que 2.500 eventos. Opcional.
originalStart string O horário de início original da instância no resultado. Opcional.
pageToken string Token que especifica qual página de resultados será retornada. Opcional.
showDeleted boolean Define se os eventos excluídos (com status igual a "cancelled") vão ser incluídos no resultado. As instâncias canceladas de eventos recorrentes ainda serão incluídas se singleEvents for "false". Opcional. O valor padrão é falso.
timeMax datetime Limite superior (exclusivo) para filtrar o horário de início de um evento. Opcional. O padrão é não filtrar por horário de início. Precisa ser um carimbo de data/hora RFC3339 com compensação de fuso horário obrigatória.
timeMin datetime Limite inferior (inclusive) para o horário de término de um evento a ser filtrado. Opcional. O padrão é não filtrar por horário de término. Precisa ser um carimbo de data/hora RFC3339 com compensação de fuso horário obrigatória.
timeZone string Fuso horário usado na resposta. Opcional. O padrão é o fuso horário da agenda.

Autorização

Esta solicitação permite a autorização com pelo menos um dos seguintes escopos:

Escopo
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

Para mais informações, consulte a página de autenticação e autorização.

Corpo da solicitação

Não forneça um corpo de solicitação com este método.

Resposta

Se for bem-sucedido, esse método retornará um corpo de resposta com esta estrutura:

{
  "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
  ]
}
Nome da propriedade Valor Descrição Observações
kind string Tipo da coletânea ("calendar#events").
etag etag ETag da coletânea.
summary string Título da agenda. Somente leitura.
description string Descrição do calendário. Somente leitura.
updated datetime Hora da última modificação do calendário (como um carimbo de data/hora RFC3339). Somente leitura.
timeZone string O fuso horário da agenda. Somente leitura.
accessRole string A função de acesso do usuário para essa agenda. Somente leitura. Os valores possíveis são:
  • "none": o usuário não tem acesso.
  • "freeBusyReader": o usuário tem acesso de leitura às informações de disponibilidade.
  • "reader": o usuário tem acesso de leitura à agenda. Os eventos particulares vão aparecer para os usuários com acesso de leitura, mas os detalhes deles vão ficar ocultos.
  • "writer": o usuário tem acesso de leitura e gravação à agenda. Os eventos particulares vão aparecer para usuários com acesso de gravação, e os detalhes do evento vão estar visíveis.
  • "owner": o usuário é o proprietário da agenda. Esse papel tem todas as permissões do papel de escritor, além da capacidade de visualizar e manipular ACLs.
defaultReminders[] list Os lembretes padrão na agenda do usuário autenticado. Esses lembretes se aplicam a todos os eventos da agenda que não os substituem explicitamente (ou seja, que não têm reminders.useDefault definido como "True").
defaultReminders[].method string O método usado por esse lembrete. Os valores possíveis são:
  • "email": os lembretes são enviados por e-mail.
  • "popup": os lembretes são enviados por um pop-up da interface.

Obrigatório ao adicionar um lembrete.

gravável
defaultReminders[].minutes integer Número de minutos antes do início do evento em que o lembrete precisa ser acionado. Os valores válidos estão entre 0 e 40320 (quatro semanas em minutos).

Obrigatório ao adicionar um lembrete.

gravável
nextPageToken string Token usado para acessar a próxima página desse resultado. Omitido se não houver mais resultados disponíveis. Nesse caso, nextSyncToken será fornecido.
items[] list Lista de eventos na agenda.
nextSyncToken string Token usado em um momento posterior para recuperar apenas as entradas que mudaram desde que o resultado foi retornado. Omitido se outros resultados estiverem disponíveis, caso em que nextPageToken será fornecido.

Exemplos

Observação: os exemplos de código disponíveis para esse método não representam todas as linguagens de programação compatíveis. Consulte a página de bibliotecas cliente para ver uma lista de linguagens compatíveis.

Java

Usa a biblioteca cliente de 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

Usa a biblioteca cliente de 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

Usa a biblioteca cliente de 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

Usa a biblioteca de 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?

Confira!

Use o APIs Explorer abaixo para chamar esse método em dados ativos e ver a resposta.