Back to Google Apps Integrations
Handler · Version 2

Google Apps Calendar Event Create

Download GitHub

About

This handler uses the Google API library to create a new Event and then inserts it into your calendar. The handler needs a refresh token and the cooresponding client id and client secret to authenticate the calendar insert request (information on how to retrieve can be found below). The parameters for the event are slightly modified so that they work within Google's API and then the new event is posted to the calendar of your choice. Any errors that occur during the posting process will be caught and re-raised by this handler.

  • In order to use this handler, the account specified by the task info values needs to enable Calendar API in admin account.

How to retrieve the Client Id, Client Secret, and Refresh Token

To enable the Calendar API and get Client Id and Client Secret:

  1. Navigate to the 'Google Developers Console' 

  2. Click on the Create Project button (or if you have an existing project that you wish to keep using, click on the project name.) 

  3. Go to the APIs page and turn on the Calendar service 

  4. Go to the Credientials page and Create a new Client Id 

      * Select 'Installed Application' for the application type 

      * Select 'Other' for the Installed Application Type 

To retrieve the Refresh Token for the account you want to post to

  1. Put this url into your browser, while substiuting [:client_id] for the client id of your application 

  * https://accounts.google.com/o/oauth2/auth?client_id=[:client_id]&redirect_uri=urn:ietf:wg:oauth:2.0:oob&scope=https://www.googleapis.com/auth/calendar&response_type=code&access_type=offline 



  2. Choose or add the account that you wish to connect the handler with 

  3. Click accept to give your application permission to modify the calendar 

  4. Copy and paste the success code that appears on the page 

  5. Send a post request to get the refresh token 

      * This can either done with Curl or with a browser extension like Advanced REST Client in Chrome (A sample curl call is below) 

POST URL = https://accounts.google.com/o/oauth2/token POST Parameters: code=[:code]&clientid=[:clientid]&clientsecret=[:clientsecret]&redirecturi=urn:ietf:wg:oauth:2.0:oob&granttype=authorization_code

Sample Curl Call: curl -- data "code=[:code]&clientid=[:clientid]&clientsecret=[:clientsecret]&redirecturi=urn:ietf:wg:oauth:2.0:oob&granttype=authorization_code" https://accounts.google.com/o/oauth2/token

Parameters
Name Description Sample
Calendar Id The id of the calendar this event will be added to. The default calendar id is the accounts email address.
Event Title The title of the new event. New Event
Location The location of the new event. Somewhere Out There
Description A description for the new event. This is a test event
Start The start of the new event in 'YYYY-MM-DD' format (will automatically set is_all_day to 'true') or 'YYYY-MM-DDTHH:MM:SS' in 24hr time (13:00 == 1:00PM) if it is a normal event.
End The end of the new event in 'YYYY-MM-DD' format (will automatically set is_all_day to 'true') or 'YYYY-MM-DDTHH:MM:SS' in 24hr time (13:00 == 1:00PM) if it is a normal event.
Is All Day Event If it is an all day event the text should be set to 'true'. Any other text (including being left blank) will be assumed that it is not an all day event.
Attendees The email addresses of people who are being invited to this event, separated by commas. test.account1@gmail.com, test.account2@gmail.com
Send Notifications Specifies whether the specified attendees should receive email notification of their invitation. Yes
Changelog

GoogleAppsCalendarEventCreate_V1 (2012-06-15)

  • Initial version. See README for details.

GoogleAppsCalendarEventCreate_V2 (2014-06-03)

  • Changed handler to use a Refresh Token, which changes the info values to Client Id, Client Secret, and Refresh Token. Also adds 'id' as a results return value, updated Google API to v7.0.1 and now always have to have calendar id to add to that calendar.
Download GitHub

On This Page

Looking for a workflow engine? Learn more about the Kinetic Data Enterprise Workflow Platform. Check it out
Return to Top