Google Calendar

Listar os eventos de hoje no calendário principal

function listAllEventsForToday() {
  var calendarId = 'primary';
  var now = new Date();
  var startOfToday = new Date(now.getYear(), now.getMonth(), now.getDate(),
      0, 0, 0);
  var endOfToday = new Date(now.getYear(), now.getMonth(), now.getDate(),
      23, 59, 29);
  var calendarEvents = Calendar.Events.list(calendarId, {
    timeMin: startOfToday.toISOString(),
    timeMax: endOfToday.toISOString(),
    singleEvents: true,
    orderBy: 'startTime'
  });

  if (calendarEvents.items && calendarEvents.items.length > 0) {
    for (var i = 0; i < calendarEvents.items.length; i++) {
      var calendarEvent = calendarEvents.items[i];
      if (calendarEvent.start.date) {
        // All-day event.
        var start = parseDate(calendarEvent.start.date);
        console.log('%s (%s)', calendarEvent.summary,
                   start.toLocaleDateString());
      } else {
        var start = parseDate(calendarEvent.start.dateTime);
        console.log('%s (%s)', calendarEvent.summary, start.toLocaleString());
      }
    }
  } else {
    console.log('No events found.');
  }
}

Recuperar todos os calendários do usuário atual

function getAllCalendars() {
  var calendarList = Calendar.CalendarList.list();
  for (var i = 0; i < calendarList.items.length; i++) {
    var calendar = calendarList.items[i];
    console.log('%s, %s', calendar.id, calendar.description);
  }
}

Criar evento em um dos calendários do usuário atual

function createEvent() {
  // You can find a Google Calendar's ID from its settings page.

  var calendarId = 'INSERT_CALENDAR_ID_HERE';

  // Nov 1, 2014 10:00:00 AM
  var start = new Date(2014, 10, 1, 10, 0, 0);

  // Nov 1, 2014 11:00:00 AM
  var end = new Date(2014, 10, 1, 11, 0, 0);

  var calendarEvent = {
    summary: 'Run account performance report',
    description: 'Run account performance report for Oct.',
    start: {
      dateTime: start.toISOString()
    },
    end: {
      dateTime: end.toISOString()
    },
    attendees: [
      {email: 'alice@example.com'},
      {email: 'bob@example.com'}
    ],
    // Red background. Use Calendar.Colors.get() for the full list.
    colorId: 11
  };
  calendarEvent = Calendar.Events.insert(calendarEvent, calendarId);
  console.log('New event with ID = %s was created.' + calendarEvent.getId());
}