Class CalendarApp

CalendarApp

Permite que um script leia e atualize o Google Agenda do usuário. Essa classe fornece acesso direto à agenda padrão do usuário, além da capacidade de recuperar outras agendas de que ele tem ou em que tenha se inscrito.

Propriedades

PropriedadeTipoDescrição
ColorColorUm enum que representa as cores nomeadas disponíveis no serviço Agenda.
EventColorEventColorUm enum que representa as cores de eventos nomeados disponíveis no serviço Agenda.
GuestStatusGuestStatusUm tipo enumerado que representa os status que um convidado pode ter em um evento.
MonthMonthUm enum que representa os meses do ano.
VisibilityVisibilityUm enum que representa a visibilidade de um evento.
WeekdayWeekdayUm enum que representa os dias da semana.

Métodos

MétodoTipo de retornoBreve descrição
createAllDayEvent(title, date)CalendarEventCria um novo evento de dia inteiro.
createAllDayEvent(title, startDate, endDate)CalendarEventCria um novo evento de dia inteiro que pode abranger vários dias.
createAllDayEvent(title, startDate, endDate, options)CalendarEventCria um novo evento de dia inteiro que pode abranger vários dias.
createAllDayEvent(title, date, options)CalendarEventCria um novo evento de dia inteiro.
createAllDayEventSeries(title, startDate, recurrence)CalendarEventSeriesCria uma nova série de eventos de dia inteiro.
createAllDayEventSeries(title, startDate, recurrence, options)CalendarEventSeriesCria uma nova série de eventos de dia inteiro.
createCalendar(name)CalendarCria uma nova agenda, pertencente ao usuário.
createCalendar(name, options)CalendarCria uma nova agenda, pertencente ao usuário.
createEvent(title, startTime, endTime)CalendarEventCria um novo evento.
createEvent(title, startTime, endTime, options)CalendarEventCria um novo evento.
createEventFromDescription(description)CalendarEventCria um evento de uma descrição em formato livre.
createEventSeries(title, startTime, endTime, recurrence)CalendarEventSeriesCria uma nova série de eventos.
createEventSeries(title, startTime, endTime, recurrence, options)CalendarEventSeriesCria uma nova série de eventos.
getAllCalendars()Calendar[]Acessa todas as agendas que o usuário possui ou em que está inscrito.
getAllOwnedCalendars()Calendar[]Acessa todas as agendas do usuário.
getCalendarById(id)CalendarExtrai a agenda com o ID fornecido.
getCalendarsByName(name)Calendar[]Acessa todas as agendas com um determinado nome que o usuário possui ou em que está inscrito.
getColor()StringRecebe a cor da agenda.
getDefaultCalendar()CalendarExtrai a agenda padrão do usuário.
getDescription()StringExtrai a descrição da agenda.
getEventById(iCalId)CalendarEventRecebe o evento com o ID fornecido.
getEventSeriesById(iCalId)CalendarEventSeriesRecebe a série de eventos com o ID fornecido.
getEvents(startTime, endTime)CalendarEvent[]Extrai todos os eventos que ocorrem em um determinado período.
getEvents(startTime, endTime, options)CalendarEvent[]Mostra todos os eventos que ocorrem em um determinado período e atende aos critérios especificados.
getEventsForDay(date)CalendarEvent[]Mostra todos os eventos que ocorrem em um determinado dia.
getEventsForDay(date, options)CalendarEvent[]Extrai todos os eventos que ocorrem em um determinado dia e atende aos critérios especificados.
getId()StringExtrai o ID da agenda.
getName()StringExtrai o nome da agenda.
getOwnedCalendarById(id)CalendarExtrai a agenda com o ID fornecido, se o usuário for proprietário dela.
getOwnedCalendarsByName(name)Calendar[]Acessa todas as agendas com um determinado nome que pertence ao usuário.
getTimeZone()StringMostra o fuso horário da agenda.
isHidden()BooleanDetermina se a agenda está oculta na interface do usuário.
isMyPrimaryCalendar()BooleanDetermina se a agenda é a principal do usuário efetivo.
isOwnedByMe()BooleanDetermina se a agenda é sua.
isSelected()BooleanDetermina se os eventos da agenda são exibidos na interface do usuário.
newRecurrence()EventRecurrenceCria um novo objeto de recorrência, que pode ser usado para criar regras para a recorrência do evento.
setColor(color)CalendarDefine a cor da agenda.
setDescription(description)CalendarDefine a descrição de uma agenda.
setHidden(hidden)CalendarDefine se a agenda ficará visível na interface do usuário.
setName(name)CalendarDefine o nome da agenda.
setSelected(selected)CalendarDefine se os eventos da agenda serão exibidos na interface do usuário.
setTimeZone(timeZone)CalendarDefine o fuso horário da agenda.
subscribeToCalendar(id)CalendarInscreve o usuário na agenda com o ID fornecido, se ele tiver permissão para se inscrever.
subscribeToCalendar(id, options)CalendarInscreve o usuário na agenda com o ID fornecido, se ele tiver permissão para se inscrever.

Documentação detalhada

createAllDayEvent(title, date)

Cria um novo evento de dia inteiro.

// Creates an all-day event for the moon landing and logs the ID.
var event = CalendarApp.getDefaultCalendar().createAllDayEvent('Apollo 11 Landing',
    new Date('July 20, 1969'));
Logger.log('Event ID: ' + event.getId());

Parâmetros

NomeTipoDescrição
titleStringO título do evento.
dateDateA data do evento (somente o dia é usado, o horário é ignorado).

Retorno

CalendarEvent: o evento criado.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

createAllDayEvent(title, startDate, endDate)

Cria um novo evento de dia inteiro que pode abranger vários dias.

// Creates an all-day event for the Woodstock festival (August 15th to 17th) and logs the ID.
var event = CalendarApp.getDefaultCalendar().createAllDayEvent('Woodstock Festival',
    new Date('August 15, 1969'),
    new Date('August 18, 1969'));
Logger.log('Event ID: ' + event.getId());

Parâmetros

NomeTipoDescrição
titleStringO título do evento.
startDateDateA data em que o evento começa (somente o dia é usado, a hora é ignorada).
endDateDateA data em que o evento termina (somente o dia é usado, o horário é ignorado). A data de término é exclusiva.

Retorno

CalendarEvent: o evento criado.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

createAllDayEvent(title, startDate, endDate, options)

Cria um novo evento de dia inteiro que pode abranger vários dias.

// Creates an all-day event for the Woodstock festival (August 15th to 17th) and logs the ID.
var event = CalendarApp.getDefaultCalendar().createAllDayEvent('Woodstock Festival',
    new Date('August 15, 1969'),
    new Date('August 18, 1969'),
    {location: 'Bethel, White Lake, New York, U.S.', sendInvites: true});
Logger.log('Event ID: ' + event.getId());

Parâmetros

NomeTipoDescrição
titleStringO título do evento.
startDateDateA data em que o evento começa (somente o dia é usado, a hora é ignorada).
endDateDateA data em que o evento termina (somente o dia é usado, o horário é ignorado). A data de término é exclusiva.
optionsObjectUm objeto JavaScript que especifica parâmetros avançados, conforme listado abaixo.

Parâmetros avançados

NomeTipoDescrição
descriptionStringDescrição do evento.
locationStringÉ o local do evento.
guestsStringUma lista separada por vírgulas de endereços de e-mail que devem ser adicionados como convidados.
sendInvitesBooleanSe os e-mails de convite serão enviados (padrão: false).

Retorno

CalendarEvent: o evento criado.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

createAllDayEvent(title, date, options)

Cria um novo evento de dia inteiro.

// Creates an all-day event for the moon landing and logs the ID.
var event = CalendarApp.getDefaultCalendar().createAllDayEvent('Apollo 11 Landing',
    new Date('July 20, 1969'),
    {location: 'The Moon'});
Logger.log('Event ID: ' + event.getId());

Parâmetros

NomeTipoDescrição
titleStringO título do evento.
dateDateA data do evento (somente o dia é usado, o horário é ignorado).
optionsObjectUm objeto JavaScript que especifica parâmetros avançados, conforme listado abaixo.

Parâmetros avançados

NomeTipoDescrição
descriptionStringDescrição do evento.
locationStringÉ o local do evento.
guestsStringUma lista separada por vírgulas de endereços de e-mail que devem ser adicionados como convidados.
sendInvitesBooleanSe os e-mails de convite serão enviados (padrão: false).

Retorno

CalendarEvent: o evento criado.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

createAllDayEventSeries(title, startDate, recurrence)

Cria uma nova série de eventos de dia inteiro.

// Creates an event series for a no-meetings day, taking place every Wednesday in 2013.
var eventSeries = CalendarApp.getDefaultCalendar().createAllDayEventSeries('No Meetings',
    new Date('January 2, 2013 03:00:00 PM EST'),
    CalendarApp.newRecurrence().addWeeklyRule()
        .onlyOnWeekday(CalendarApp.Weekday.WEDNESDAY)
        .until(new Date('January 1, 2014')));
Logger.log('Event Series ID: ' + eventSeries.getId());

Parâmetros

NomeTipoDescrição
titleStringo título dos eventos da série
startDateDatea data do primeiro evento da série (somente o dia é usado, o horário é ignorado)
recurrenceEventRecurrenceas configurações de recorrência da série de eventos

Retorno

CalendarEventSeries: a série de eventos criada.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

createAllDayEventSeries(title, startDate, recurrence, options)

Cria uma nova série de eventos de dia inteiro.

// Creates an event series for a no-meetings day, taking place every Wednesday in 2013.
var eventSeries = CalendarApp.getDefaultCalendar().createAllDayEventSeries('No Meetings',
    new Date('January 2, 2013 03:00:00 PM EST'),
    CalendarApp.newRecurrence().addWeeklyRule()
        .onlyOnWeekday(CalendarApp.Weekday.WEDNESDAY)
        .until(new Date('January 1, 2014')),
    {guests: 'everyone@example.com'});
Logger.log('Event Series ID: ' + eventSeries.getId());

Parâmetros

NomeTipoDescrição
titleStringo título dos eventos da série
startDateDatea data do primeiro evento da série (somente o dia é usado, o horário é ignorado)
recurrenceEventRecurrenceas configurações de recorrência da série de eventos
optionsObjectum objeto JavaScript que especifica parâmetros avançados, conforme listado abaixo

Parâmetros avançados

NomeTipoDescrição
descriptionStringa descrição dos eventos da série
locationStringo local dos eventos na série
guestsStringuma lista separada por vírgulas de endereços de e-mail que devem ser adicionados como convidados aos eventos da série
sendInvitesBooleanse quer enviar e-mails de convite (padrão: false)

Retorno

CalendarEventSeries: a série de eventos criada.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

createCalendar(name)

Cria uma nova agenda, pertencente ao usuário.

// Creates a new calendar named "Travel Plans".
var calendar = CalendarApp.createCalendar('Travel Plans');
Logger.log('Created the calendar "%s", with the ID "%s".',
    calendar.getName(), calendar.getId());

Parâmetros

NomeTipoDescrição
nameStringo nome da nova agenda

Retorno

Calendar: a agenda recém-criada.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

createCalendar(name, options)

Cria uma nova agenda, pertencente ao usuário.

// Creates a new calendar named "Travel Plans" with a summary and color.
var calendar = CalendarApp.createCalendar('Travel Plans', {
  summary: 'A calendar to plan my travel schedule.',
  color: CalendarApp.Color.BLUE
});
Logger.log('Created the calendar "%s", with the ID "%s".',
    calendar.getName(), calendar.getId());

Parâmetros

NomeTipoDescrição
nameStringo nome da nova agenda
optionsObjectum objeto JavaScript que especifica parâmetros avançados, conforme listado abaixo

Parâmetros avançados

NomeTipoDescrição
locationStringo local da agenda
summaryStringa descrição da agenda
timeZoneStringo fuso horário para definir a agenda, especificado no formato "longo" (por exemplo, "America/New_York", conforme listado por Joda.org.
colorStringuma string de cor hexadecimal ("#rrggbb") ou um valor de CalendarApp.Colors
hiddenBooleanse a agenda está oculta na interface do usuário (padrão: false);
selectedBooleanse os eventos da agenda são exibidos na interface do usuário (padrão: true);

Retorno

Calendar: a agenda recém-criada.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

createEvent(title, startTime, endTime)

Cria um novo evento.

Se nenhum fuso horário for especificado, os valores de tempo serão interpretados no contexto do fuso horário do script, que pode ser diferente do fuso horário da agenda.

// Creates an event for the moon landing and logs the ID.
var event = CalendarApp.getDefaultCalendar().createEvent('Apollo 11 Landing',
    new Date('July 20, 1969 20:00:00 UTC'),
    new Date('July 21, 1969 21:00:00 UTC'));
Logger.log('Event ID: ' + event.getId());

Parâmetros

NomeTipoDescrição
titleStringo título do evento
startTimeDatea data e a hora em que o evento começa
endTimeDatea data e a hora em que o evento termina

Retorno

CalendarEvent: o evento criado.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

createEvent(title, startTime, endTime, options)

Cria um novo evento.

Se nenhum fuso horário for especificado, os valores de tempo serão interpretados no contexto do fuso horário do script, que pode ser diferente do fuso horário da agenda.

// Creates an event for the moon landing and logs the ID.
var event = CalendarApp.getDefaultCalendar().createEvent('Apollo 11 Landing',
    new Date('July 20, 1969 20:00:00 UTC'),
    new Date('July 20, 1969 21:00:00 UTC'),
    {location: 'The Moon'});
Logger.log('Event ID: ' + event.getId());

Parâmetros

NomeTipoDescrição
titleStringo título do evento
startTimeDatea data e a hora em que o evento começa
endTimeDatea data e a hora em que o evento termina
optionsObjectum objeto JavaScript que especifica parâmetros avançados, conforme listado abaixo

Parâmetros avançados

NomeTipoDescrição
descriptionStringa descrição do evento
locationStringo local do evento
guestsStringuma lista de endereços de e-mail separados por vírgula que devem ser adicionados como convidados
sendInvitesBooleanse quer enviar e-mails de convite (padrão: false)

Retorno

CalendarEvent: o evento criado.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

createEventFromDescription(description)

Cria um evento de uma descrição em formato livre.

A descrição precisa ter o mesmo formato do recurso Quick Add da interface.

// Creates a new event and logs its ID.
var event = CalendarApp.getDefaultCalendar()
    .createEventFromDescription('Lunch with Mary, Friday at 1PM');
Logger.log('Event ID: ' + event.getId());

Parâmetros

NomeTipoDescrição
descriptionStringuma descrição livre do evento.

Retorno

CalendarEvent: o evento criado.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

createEventSeries(title, startTime, endTime, recurrence)

Cria uma nova série de eventos.

// Creates an event series for a team meeting, taking place every Tuesday and Thursday in 2013.
var eventSeries = CalendarApp.getDefaultCalendar().createEventSeries('Team Meeting',
    new Date('January 1, 2013 03:00:00 PM EST'),
    new Date('January 1, 2013 04:00:00 PM EST'),
    CalendarApp.newRecurrence().addWeeklyRule()
        .onlyOnWeekdays([CalendarApp.Weekday.TUESDAY, CalendarApp.Weekday.THURSDAY])
        .until(new Date('January 1, 2014')));
Logger.log('Event Series ID: ' + eventSeries.getId());

Parâmetros

NomeTipoDescrição
titleStringo título dos eventos da série
startTimeDatea data e a hora em que o primeiro evento da série começa
endTimeDatea data e a hora em que o primeiro evento da série termina.
recurrenceEventRecurrenceas configurações de recorrência da série de eventos

Retorno

CalendarEventSeries: a série de eventos criada.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

createEventSeries(title, startTime, endTime, recurrence, options)

Cria uma nova série de eventos.

// Creates an event series for a team meeting, taking place every Tuesday and Thursday in 2013.
var eventSeries = CalendarApp.getDefaultCalendar().createEventSeries('Team Meeting',
    new Date('January 1, 2013 03:00:00 PM EST'),
    new Date('January 1, 2013 04:00:00 PM EST'),
    CalendarApp.newRecurrence().addWeeklyRule()
        .onlyOnWeekdays([CalendarApp.Weekday.TUESDAY, CalendarApp.Weekday.THURSDAY])
        .until(new Date('January 1, 2014')),
    {location: 'Conference Room'});
Logger.log('Event Series ID: ' + eventSeries.getId());

Parâmetros

NomeTipoDescrição
titleStringo título dos eventos da série
startTimeDatea data e a hora em que o primeiro evento da série começa
endTimeDatea data e a hora em que o primeiro evento da série termina.
recurrenceEventRecurrenceas configurações de recorrência da série de eventos
optionsObjectum objeto JavaScript que especifica parâmetros avançados, conforme listado abaixo

Parâmetros avançados

NomeTipoDescrição
descriptionStringa descrição dos eventos da série
locationStringo local dos eventos na série
guestsStringuma lista separada por vírgulas de endereços de e-mail que devem ser adicionados como convidados aos eventos da série
sendInvitesBooleanse quer enviar e-mails de convite (padrão: false)

Retorno

CalendarEventSeries: a série de eventos criada.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

getAllCalendars()

Acessa todas as agendas que o usuário possui ou em que está inscrito.

// Determines how many calendars the user can access.
var calendars = CalendarApp.getAllCalendars();
Logger.log('This user owns or is subscribed to %s calendars.',
    calendars.length);

Retorno

Calendar[]: todas as agendas que o usuário pode acessar.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getAllOwnedCalendars()

Acessa todas as agendas do usuário.

// Determines how many calendars the user owns.
var calendars = CalendarApp.getAllOwnedCalendars();
Logger.log('This user owns %s calendars.', calendars.length);

Retorno

Calendar[]: todas as agendas do usuário.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getCalendarById(id)

Extrai a agenda com o ID fornecido.

// Gets the public calendar "US Holidays" by ID.
var calendar = CalendarApp.getCalendarById(
    'en.usa#holiday@group.v.calendar.google.com');
Logger.log('The calendar is named "%s".', calendar.getName());

Parâmetros

NomeTipoDescrição
idStringo ID da agenda

Retorno

Calendar: a agenda com o ID fornecido ou null se a agenda não existir, se o usuário não puder acessá-la ou se o usuário não estiver inscrito nela

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getCalendarsByName(name)

Acessa todas as agendas com um determinado nome que o usuário possui ou em que está inscrito. Os nomes não diferenciam maiúsculas de minúsculas.

// Gets the public calendar named "US Holidays".
var calendars = CalendarApp.getCalendarsByName('US Holidays');
Logger.log('Found %s matching calendars.', calendars.length);

Parâmetros

NomeTipoDescrição
nameStringo nome da agenda

Retorno

Calendar[]: todas as agendas com este nome que o usuário pode acessar.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getColor()

Recebe a cor da agenda.

// Opens the calendar by its ID.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById('222larabrown@gmail.com');

// Gets the color of the calendar and logs it to the console.
// For the default calendar, you can use CalendarApp.getColor() instead.
const calendarColor = calendar.getColor();
console.log(calendarColor);

Retorno

String: uma string de cor hexadecimal ("#rrggbb").

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getDefaultCalendar()

Extrai a agenda padrão do usuário.

// Determines the time zone of the user's default calendar.
var calendar = CalendarApp.getDefaultCalendar();
Logger.log('My default calendar is set to the time zone "%s".',
    calendar.getTimeZone());

Retorno

Calendar: a agenda padrão do usuário.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getDescription()

Extrai a descrição da agenda.

// Opens the calendar by its ID.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById('222larabrown@gmail.com');

// Sets the description of the calendar to 'Test description.'
calendar.setDescription('Test description');

// Gets the description of the calendar and logs it to the console.
// For the default calendar, you can use CalendarApp.getDescription() instead.
const description = calendar.getDescription();
console.log(description);

Retorno

String: a descrição da agenda.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getEventById(iCalId)

Recebe o evento com o ID fornecido. Se a série pertencer a uma agenda diferente da padrão, esse método precisará ser chamado nessa agenda. Chamar getEventById(iCalId) retorna apenas um evento da agenda padrão.

Vários eventos podem ter o mesmo ID se fizerem parte de uma série de eventos. Nesse caso, o método retorna apenas o primeiro evento dessa série.

// Opens the calendar by its ID.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById('222larabrown@gmail.com')

// Creates an event for the moon landing.
const event = calendar.createEvent('Apollo 11 Landing',
  new Date('July 20, 1969 20:05:00 UTC'),
  new Date('July 20, 1969 20:17:00 UTC'));

// Gets the calendar event ID and logs it to the console.
const iCalId = event.getId();
console.log(iCalId);

// Gets the event by its ID and logs the title of the event to the console.
// For the default calendar, you can use CalendarApp.getEventById(iCalId) instead.
const myEvent = calendar.getEventById(iCalId);
console.log(myEvent.getTitle());

Parâmetros

NomeTipoDescrição
iCalIdStringID do evento.

Retorno

CalendarEvent: o evento com o ID fornecido ou null se o evento não existir ou o usuário não puder acessá-lo.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getEventSeriesById(iCalId)

Recebe a série de eventos com o ID fornecido. Se o ID fornecido for para um único CalendarEvent, uma CalendarEventSeries será retornada com um único evento na série. Se a série de eventos pertencer a uma agenda diferente da agenda padrão, esse método precisará ser chamado usando essa CalendarApp. Chamar getEventSeriesById(iCalId) diretamente retorna apenas uma série de eventos que existe na agenda padrão.

// Opens the calendar by its ID.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById('222larabrown@gmail.com');

// Creates an event series for a daily team meeting from 1 PM to 2 PM.
// The series adds the daily event from January 1, 2023 through December 31, 2023.
const eventSeries = calendar.createEventSeries('Team meeting',
  new Date('Jan 1, 2023 13:00:00'),
  new Date('Jan 1, 2023 14:00:00'),
  CalendarApp.newRecurrence().addDailyRule().until(new Date('Jan 1, 2024')));

// Gets the ID of the event series.
const iCalId = eventSeries.getId();

// Gets the event series by its ID and logs the series title to the console.
// For the default calendar, you can use CalendarApp.getEventSeriesById(iCalId) instead.
console.log(calendar.getEventSeriesById(iCalId).getTitle());

Parâmetros

NomeTipoDescrição
iCalIdStringID da série de eventos.

Retorno

CalendarEventSeries: a série com o ID fornecido ou null se a série não existir ou o usuário não puder acessá-la.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getEvents(startTime, endTime)

Extrai todos os eventos que ocorrem em um determinado período.

Esse método retorna eventos que começam durante o período especificado, terminam durante o período ou abrangem o período. Se nenhum fuso horário for especificado, os valores de horário serão interpretados no contexto do fuso horário do script, que pode ser diferente do fuso horário da agenda.

// Determines how many events are happening in the next two hours.
var now = new Date();
var twoHoursFromNow = new Date(now.getTime() + (2 * 60 * 60 * 1000));
var events = CalendarApp.getDefaultCalendar().getEvents(now, twoHoursFromNow);
Logger.log('Number of events: ' + events.length);

Parâmetros

NomeTipoDescrição
startTimeDateo início do período
endTimeDateo fim do período, não inclusivo

Retorno

CalendarEvent[]: os eventos que ocorrem no período

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getEvents(startTime, endTime, options)

Mostra todos os eventos que ocorrem em um determinado período e atende aos critérios especificados.

Esse método retorna eventos que começam durante o período determinado, terminam durante o período ou que abrangem o período. Se nenhum fuso horário for especificado, os valores de horário serão interpretados no contexto do fuso horário do script, que pode ser diferente do fuso horário da agenda.

A filtragem em author, search ou statusFilters ocorre depois da aplicação de start e max. Isso significa que o número de eventos retornados pode ser menor que max, mesmo que outros eventos atendam aos critérios.

// Determines how many events are happening in the next two hours that contain the term
// "meeting".
var now = new Date();
var twoHoursFromNow = new Date(now.getTime() + (2 * 60 * 60 * 1000));
var events = CalendarApp.getDefaultCalendar().getEvents(now, twoHoursFromNow,
    {search: 'meeting'});
Logger.log('Number of events: ' + events.length);

Parâmetros

NomeTipoDescrição
startTimeDateo início do período
endTimeDateo fim do período, não inclusivo
optionsObjectum objeto JavaScript que especifica parâmetros avançados, conforme listado abaixo

Parâmetros avançados

NomeTipoDescrição
startIntegero índice do primeiro evento a ser retornado
maxIntegero número máximo de eventos a serem retornados
authorStringum endereço de e-mail usado para filtrar os resultados pelo criador do evento
searchStringuma consulta de pesquisa de texto completo usada para filtrar resultados
statusFilters[]GuestStatusuma matriz de status usados para filtrar resultados

Retorno

CalendarEvent[]: os eventos que ocorrem no período e correspondem aos critérios

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getEventsForDay(date)

Mostra todos os eventos que ocorrem em um determinado dia.

Esse método retorna eventos se eles começam durante o dia especificado, terminam durante o dia ou abrangem o dia.

Observe que somente a parte da data do objeto Date é usada, e a parte de hora é ignorada. A data é interpretada como meia-noite desse dia até meia-noite do dia seguinte no fuso horário do calendário.

// Determines how many events are happening today.
var today = new Date();
var events = CalendarApp.getDefaultCalendar().getEventsForDay(today);
Logger.log('Number of events: ' + events.length);

Parâmetros

NomeTipoDescrição
dateDatea data para a qual recuperar os eventos (somente o dia é usado; a hora é ignorada)

Retorno

CalendarEvent[]: os eventos que ocorrem na data especificada

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getEventsForDay(date, options)

Extrai todos os eventos que ocorrem em um determinado dia e atende aos critérios especificados.

Esse método retorna eventos se eles começam durante o dia especificado, terminam durante o dia ou abrangem o dia.

Observe que somente a parte da data do objeto Date é usada, e a parte de hora é ignorada. A data é interpretada como meia-noite desse dia até meia-noite do dia seguinte no fuso horário do calendário.

A filtragem em author, search ou statusFilters ocorre depois da aplicação de start e max. Isso significa que o número de eventos retornados pode ser menor que max, mesmo que outros eventos atendam aos critérios.

// Determines how many events are happening today and contain the term "meeting".
var today = new Date();
var events = CalendarApp.getDefaultCalendar().getEventsForDay(today, {search: 'meeting'});
Logger.log('Number of events: ' + events.length);

Parâmetros

NomeTipoDescrição
dateDatea data para a qual recuperar os eventos (somente o dia é usado; a hora é ignorada)
optionsObjectopções de filtragem avançada

Parâmetros avançados

NomeTipoDescrição
startIntegero índice do primeiro evento a ser retornado
maxIntegero número máximo de eventos a serem retornados
authorStringum endereço de e-mail usado para filtrar os resultados pelo criador do evento
searchStringuma consulta de pesquisa de texto completo usada para filtrar resultados
statusFilters[]GuestStatusuma matriz de status usados para filtrar resultados

Retorno

CalendarEvent[]: os eventos que ocorrem na data especificada e correspondem aos critérios

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getId()

Extrai o ID da agenda. O ID da agenda padrão de um usuário é o endereço de e-mail dele.

// Opens the calendar by its ID.
// To get the user's default calendar, use CalendarApp.getDefaultCalendar().
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById('222larabrown@gmail.com');

// Gets the ID of the calendar and logs it to the console.
const calendarId = calendar.getId();
console.log(calendarId);

Retorno

String: o código da agenda.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getName()

Extrai o nome da agenda.

// Opens the calendar by its ID.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById('222larabrown@gmail.com');

// Gets the name of the calendar and logs it to the console.
// For the default calendar, you can use CalendarApp.getName() instead.
const calendarName = calendar.getName();
console.log(calendarName);

Retorno

String: o nome desta agenda.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getOwnedCalendarById(id)

Extrai a agenda com o ID fornecido, se o usuário for proprietário dela.

Para encontrar um ID de agenda, clique na seta ao lado do nome dela no Google Agenda e selecione Configurações da agenda. O ID aparece na parte de baixo da página de configurações.

// Gets a (non-existent) private calendar by ID.
var calendar = CalendarApp.getOwnedCalendarById(
    '123456789@group.calendar.google.com');
Logger.log('The calendar is named "%s".', calendar.getName());

Parâmetros

NomeTipoDescrição
idStringo ID da agenda

Retorno

Calendar: a agenda com o ID fornecido ou null se a agenda não existir ou se o usuário não for proprietária dela

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getOwnedCalendarsByName(name)

Acessa todas as agendas com um determinado nome que pertence ao usuário. Os nomes não diferenciam maiúsculas de minúsculas.

// Gets a private calendar named "Travel Plans".
var calendars = CalendarApp.getOwnedCalendarsByName('Travel Plans');
Logger.log('Found %s matching calendars.', calendars.length);

Parâmetros

NomeTipoDescrição
nameStringo nome da agenda

Retorno

Calendar[]: todas as agendas com este nome que pertencem ao usuário

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

getTimeZone()

Mostra o fuso horário da agenda.

// Opens the calendar by its ID.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById('222larabrown@gmail.com');

// Gets the time zone of the calendar and logs it to the console.
// For the default calendar, you can use CalendarApp.getTimeZone() instead.
const timeZone = calendar.getTimeZone();
console.log(timeZone);

Retorno

String: o fuso horário especificado no formato "longo", por exemplo, "America/New_York", conforme listado por Joda.org (em inglês).

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

isHidden()

Determina se a agenda está oculta na interface do usuário.

// Opens the calendar by its ID.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById('222larabrown@gmail.com');

// Determines whether the calendar is hidden in the user interface and logs it to the console.
// For the default calendar, you can use CalendarApp.isHidden() instead.
const isHidden = calendar.isHidden();
console.log(isHidden);

Retorno

Boolean: true se a agenda estiver oculta na interface do usuário; false se não estiver.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

isMyPrimaryCalendar()

Determina se a agenda é a principal do usuário efetivo.

// Opens the calendar by its ID.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById('222larabrown@gmail.com');

// Determines whether the calendar is the default calendar for
// the effective user and logs it to the console.
// For the default calendar, you can use CalendarApp.isMyPrimaryCalendar() instead.
const isMyPrimaryCalendar = calendar.isMyPrimaryCalendar();
console.log(isMyPrimaryCalendar);

Retorno

Boolean: true se a agenda for a agenda padrão do usuário efetivo; false se não for.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

isOwnedByMe()

Determina se a agenda é sua.

// Gets a calendar by its ID. To get the user's default calendar, use
// CalendarApp.getDefault() instead.
// TODO(developer): Replace the ID with the calendar ID that you want to use.
const calendar = CalendarApp.getCalendarById('abc123456@group.calendar.google.com');

// Determines whether the calendar is owned by you and logs it.
console.log(calendar.isOwnedByMe());

Retorno

Boolean: true se a agenda pertencer a você; caso contrário, false.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

isSelected()

Determina se os eventos da agenda são exibidos na interface do usuário.

// Gets the user's default calendar. To get a different calendar, use getCalendarById()
// instead.
const calendar = CalendarApp.getDefaultCalendar();

// Determines whether the calendar's events are displayed in the user interface and logs it.
console.log(calendar.isSelected());

Retorno

Boolean: true se os eventos da agenda forem exibidos na interface do usuário; false se não forem

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

newRecurrence()

Cria um novo objeto de recorrência, que pode ser usado para criar regras para a recorrência do evento.

// Creates an event series for a no-meetings day, taking place every Wednesday in 2013.
var recurrence = CalendarApp.newRecurrence().addWeeklyRule()
    .onlyOnWeekday(CalendarApp.Weekday.WEDNESDAY)
    .until(new Date('January 1, 2014'));
var eventSeries = CalendarApp.getDefaultCalendar().createAllDayEventSeries('No Meetings',
    new Date('January 2, 2013 03:00:00 PM EST'),
    recurrence);
Logger.log('Event Series ID: ' + eventSeries.getId());

Retorno

EventRecurrence: um novo objeto de recorrência sem regras definidas (se comporta como uma recorrência semanal).

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.google.com/calendar/feeds

setColor(color)

Define a cor da agenda.

// Opens the calendar by its ID.
// TODO(developer): Replace the ID with your own.
const calendar = CalendarApp.getCalendarById('222larabrown@gmail.com');

// Sets the color of the calendar to pink using the Calendar Color enum.
// For the default calendar, you can use CalendarApp.setColor() instead.
calendar.setColor(CalendarApp.Color.PINK);

Parâmetros

NomeTipoDescrição
colorStringUma CalendarApp.Color ou uma string de cor hexadecimal ("#rrggbb").

Retorno

Calendar: essa agenda para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setDescription(description)

Define a descrição de uma agenda.

// Gets the user's default calendar. To get a different calendar, use getCalendarById()
// instead.
const calendar = CalendarApp.getDefaultCalendar();

// Sets the description of the calendar.
// TODO(developer): Update the string with the description that you want to use.
calendar.setDescription('Updated calendar description.')

Parâmetros

NomeTipoDescrição
descriptionStringa descrição desta agenda

Retorno

Calendar: esta agenda para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setHidden(hidden)

Define se a agenda ficará visível na interface do usuário.

Parâmetros

NomeTipoDescrição
hiddenBooleantrue para ocultar a agenda na interface do usuário; false para mostrá-la

Retorno

Calendar: esta agenda para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setName(name)

Define o nome da agenda.

// Gets the user's default calendar. To get a different calendar, use getCalendarById()
// instead.
const calendar = CalendarApp.getDefaultCalendar();

// Sets the name of the calendar.
// TODO(developer): Update the string with the name that you want to use.
calendar.setName('Example calendar name');

Parâmetros

NomeTipoDescrição
nameStringo novo nome

Retorno

Calendar: esta agenda para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setSelected(selected)

Define se os eventos da agenda serão exibidos na interface do usuário.

// Gets the user's default calendar. To get a different calendar, use getCalendarById()
// instead.
const calendar = CalendarApp.getDefaultCalendar();

// Selects the calendar so that its events are displayed in the user interface. To
// unselect the calendar, set the parameter to false.
calendar.setSelected(true);

Parâmetros

NomeTipoDescrição
selectedBooleantrue para mostrar os eventos da agenda na interface do usuário; false para ocultá-los

Retorno

Calendar: esta agenda para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

setTimeZone(timeZone)

Define o fuso horário da agenda.

// Gets the user's default calendar. To get a different calendar, use getCalendarById()
// instead.
const calendar = CalendarApp.getDefaultCalendar();

// Sets the time zone of the calendar to America/New York (US/Eastern) time.
calendar.setTimeZone('America/New_York');

Parâmetros

NomeTipoDescrição
timeZoneStringO fuso horário especificado no formato "longo", como "America/New_York", conforme listado por Joda.org.

Retorno

Calendar: essa agenda para encadeamento.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

subscribeToCalendar(id)

Inscreve o usuário na agenda com o ID fornecido, se ele tiver permissão para se inscrever.

// Subscribe to the calendar "US Holidays".
var calendar = CalendarApp.subscribeToCalendar(
    'en.usa#holiday@group.v.calendar.google.com');
Logger.log('Subscribed to the calendar "%s".', calendar.getName());

Parâmetros

NomeTipoDescrição
idStringo ID da agenda para inscrição

Retorno

Calendar: a conta recém-inscrita na agenda.

Gera

Error: se não houver uma agenda com esse ID

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

subscribeToCalendar(id, options)

Inscreve o usuário na agenda com o ID fornecido, se ele tiver permissão para se inscrever.

// Subscribe to the calendar "US Holidays", and set it to the color blue.
var calendar = CalendarApp.subscribeToCalendar(
    'en.usa#holiday@group.v.calendar.google.com',
    { color: CalendarApp.Color.BLUE });
Logger.log('Subscribed to the calendar "%s".', calendar.getName());

Parâmetros

NomeTipoDescrição
idStringo ID da agenda para inscrição
optionsObjectum objeto JavaScript que especifica parâmetros avançados, conforme listado abaixo

Parâmetros avançados

NomeTipoDescrição
colorStringuma string de cor hexadecimal ("#rrggbb") ou um valor de CalendarApp.Colors
hiddenBooleanse a agenda está oculta na interface do usuário (padrão: false);
selectedBooleanse os eventos da agenda são exibidos na interface do usuário (padrão: true);

Retorno

Calendar: a agenda recém-inscrita

Gera

Error: se não houver uma agenda com esse ID

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos ou escopos apropriados da API REST relacionada:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds