Tipos de evento

Esta página explica a propriedade eventType e as especificações dos tipos de evento disponíveis na API Google Calendar.

O Google Agenda permite que os usuários criem eventos genéricos, bem como eventos que são projetados para casos de uso específicos e com propriedades personalizadas.

O tipo de evento pode ser descoberto nos seguintes locais da API:

  • Todos os eventos são retornados com eventType.
  • eventType precisa ser definido ao criar ou atualizar um recurso de evento. Se ela não for definida, O tipo 'default' será usado.
  • eventTypes pode ser especificado em uma Events:list para listar eventos de tipos específicos. Se nenhum tipo for especificado, todos os tipos será retornado.
  • eventTypes pode ser especificado em uma tag Events:watch para se inscrever em atualizações de eventos de tipos específicos. Se nenhum tipo for especificado, a solicitação resultará na inscrição de todos os tipos de evento.
.

Evento padrão

Eventos com o tipo default são criados e usados como um dos principais recursos da API Google Calendar. Eles dão suporte a uma ampla variedade de propriedades que pode ser usada para personalizar ainda mais o evento.

Consulte Crie eventos para começar a trabalhar Eventos do Google Agenda.

Aniversário

Aniversários são eventos especiais que duram o dia inteiro e têm recorrência anual. Eles têm o seguintes especificações:

  • eventType está definido como 'birthday'.
  • start e Os campos end precisam definir uma evento de dia inteiro que dura exatamente um dia.
  • Valor do campo visibility precisa ser 'private'.
  • Valor do campo transparency precisa ser 'transparent'.
  • precisam ter uma recorrência anual, o que significa que O campo recurrence precisa ser 'RRULE:FREQ=YEARLY'. Os eventos de aniversários de 29 de fevereiro devem ter a seguinte regra de recorrência: 'RRULE:FREQ=YEARLY;BYMONTH=2;BYMONTHDAY=-1':
  • Pode ter um colorId, summary e reminders.
  • Não aceite outras propriedades de eventos.

Eventos do Gmail

Eventos gerados automaticamente do Gmail têm o tipo de evento 'fromGmail'.

A API Google Calendar não permite a criação desse tipo de evento usando o insert.

A API permite atualizar colorId, reminders, visibility, transparency, status, private e shared propriedades estendidas usando a atualização e patch.

A API oferece suporte às operações get e métodos list para ler eventos de Gmail eventTypes pode ser Defina como 'fromGmail' para listar apenas eventos gerados pelo Gmail. Se nenhum tipo for for especificado, os eventos do Gmail serão listados ao lado de todos os outros tipos de eventos.

A API oferece suporte ao método watch para inscrever-se para receber alterações em eventos do Gmail no Google Agenda. Se nenhum tipo for especificado, todos os tipos de evento, incluindo 'fromGmail', serão inscritos.

Eventos do Gmail podem ser excluídos usando o O método delete do API Google Calendar.

Alterar o organizador de um evento no Gmail usando move ou update não tem suporte.

Horário de concentração, status "Fora do escritório" e local de trabalho

A API Google Calendar pode ser usada para criar e gerenciar eventos que mostram a status dos usuários do Google Agenda.

Esses recursos só estão disponíveis nas agendas principais, e para alguns Usuários do Google Agenda. Consulte Gerenciar o horário de concentração, o status "Fora do escritório" e o trabalho eventos de localização para saber mais.

Conheça os tipos de evento no Google Apps Script

O Google Apps Script é uma nuvem baseada em JavaScript linguagem de script que permite criar aplicativos de negócios que se integram no Google Workspace. Os scripts são desenvolvidos em um editor de código baseado em navegador e são armazenadas e executadas nos servidores do Google. Consulte também Google Apps Script guia de início rápido para começar a usar Apps Script para enviar solicitações à API Google Calendar.

As instruções a seguir descrevem como ler e gerenciar eventos usando o API Google Calendar como um serviço avançado nas Google Apps Script. Para uma lista completa de recursos e métodos da API Google Calendar, consulte a documentação de referência.

Criar e configurar o script

  1. Crie um script acessando script.google.com/create.
  2. No painel à esquerda ao lado de Serviços, clique em Adicionar um serviço .
  3. Selecione API Google Calendar e clique em Adicionar.
  4. Depois de ativada, a API aparece no painel esquerdo. Métodos e classes na API podem ser listadas usando a palavra-chave Calendar no editor.

Atualizar o projeto do Google Cloud (opcional)

Cada projeto do Google Apps Script tem um projeto associado do Google Cloud. Seu pode usar o projeto padrão que o Google Apps Script aceita cria. Se você quiser usar um projeto personalizado do Google Cloud, consulte Mudar para um diferentes projetos padrão do Cloud. Depois de definir o projeto do Google Cloud, selecione Editor no lado esquerdo para voltar ao editor de código.

Adicionar código ao script

O exemplo de código a seguir mostra como listar, ler e criar eventos com valores de eventType diferentes.

  1. Cole o seguinte no editor de código:

    const CALENDAR_ID = 'CALENDAR_ID' || 'primary';
    
    /** Lists default events. */
    function listDefaultEvents() {
      listEvents('default');
    }
    
    /** Lists events from Gmail. */
    function listEventsFromGmail() {
      listEvents('fromGmail');
    }
    
    /**
      * Lists events with the given event type. If no type is specified, lists all events.
      * See https://developers.google.com/calendar/api/v3/reference/events/list
      */
    function listEvents(eventType = undefined) {
      // Query parameters for the list request.
      const optionalArgs = {
        eventTypes: eventType ? [eventType] : undefined,
        singleEvents: true,
        timeMax: '2024-07-30T00:00:00+01:00',
        timeMin: '2024-07-29T00:00:00+01:00',
      }
      try {
        var response = Calendar.Events.list(CALENDAR_ID, optionalArgs);
        response.items.forEach(event => console.log(event));
      } catch (exception) {
        console.log(exception.message);
      }
    }
    
    /**
      * Reads the event with the given eventId.
      * See https://developers.google.com/calendar/api/v3/reference/events/get
      */
    function readEvent() {
      try {
        var response = Calendar.Events.get(CALENDAR_ID, 'EVENT_ID');
        console.log(response);
      } catch (exception) {
        console.log(exception.message);
      }
    }
    
    /** Creates a default event. */
    function createDefaultEvent() {
      const event = {
        start: { dateTime: '2024-07-30T10:30:00+01:00'},
        end: { dateTime: '2024-07-30T12:30:00+01:00'},
        description: 'Created from Apps Script.',
        eventType: 'default',
        summary: 'Sample event',
      }
      createEvent(event);
    }
    
    /**
      * Creates a Calendar event.
      * See https://developers.google.com/calendar/api/v3/reference/events/insert
      */
    function createEvent(event) {
    
      try {
        var response = Calendar.Events.insert(event, CALENDAR_ID);
        console.log(response);
      } catch (exception) {
        console.log(exception.message);
      }
    }
    

    Substitua:

    • CALENDAR_ID: endereço de e-mail da agenda para para recuperar e criar eventos. Essa constante é inicialmente definida como 'primary', que é uma palavra-chave para acessar a agenda principal de usuário que fez login. A alteração desse valor permite ler eventos nas agendas de outros usuários a que você tem acesso.
    • EVENT_ID: ID do evento. É possível chamar o método Events:list para recuperar IDs de eventos.

Executar a amostra de código

  1. Acima do editor de código, selecione a função a ser executada no menu suspenso. e clique em Executar.
  2. Na primeira execução, ele solicita que você autorize o acesso. Revisar e permitir Apps Script para acessar sua agenda.
  3. É possível inspecionar os resultados da execução do script no Registro de execução exibido na parte inferior da janela.