Document toolboxDocument toolbox

Google Calendar

Google Calendar is a time-management and scheduling calendar service developed by Google.

Connect Google Calendar with Devo SOAR

  1. Navigate to Automations > Integrations.

  2. Search for Google Calendar.

  3. Click Details, then the + icon. Enter the required information in the following fields.

  4. Label: Enter a connection name.

  5. Reference Values: Define variables here to templatize integration connections and actions. For example, you can use https://www.{{hostname}}.com where, hostname is a variable defined in this input. For more information on how to add data, see 'Add Data' Input Type for Integrations.

  6. Verify SSL: Select option to verify connecting server's SSL certificate (Default is Verify SSL Certificate).

  7. Remote Agent: Run this integration using the Devo SOAR Remote Agent.

  8. Keys File: JSON File containing service account keys and other details. Details about config file.

  9. After you've entered all the details, click Connect.

The calendar must be shared with a service account. "calendar settings.png" file is available for reference and follow here to create a service account.

Actions for Google Calendar

Get Events

Retrieve events from Google Calendar.

Input Field

Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.

Input Name

Description

Required

Input Name

Description

Required

Calendar ID

Column name from parent table containing calendar ID, usually an email ID.

Required

Start Time

Jinja-templated for start time (default is Batch start time).

 

Example: 2020-09-01T12:02:24-07:00, {{start_time_column}}.

Optional

 

End Time

Jinja-templated for end time (default is Batch end time).

 

Example: 2020-09-02T12:02:24-07:00, {{end_time_column}}.

Optional

 

Number of events

Number of events to be fetched (default is 1,000 events).

Optional

Output

A JSON object containing multiple rows of result:

  • has_error: True/False

  • error: message/null

  • result: List of events.

``` {json}{ "attendees": [ { "comment": "Helloooooooo", "email": "aaaa@aaa.com", "organizer": true, "responseStatus": "declined", "self": true }, { "email": "aaaa@aaa.com", "responseStatus": "needsAction" } ], "conferenceData": { "conferenceId": "aya-shqk-zujkn", "conferenceSolution": { "iconUri": "https://fonts.gstatic.org/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png", "key": { "type": "hangoutsMeet" }, "name": "Google Meet" }, "entryPoints": [ { "entryPointType": "video", "label": "meet.google.com/aya-shqk-zun", "uri": "https://meet.google.com/aya-shqk-zujkn" } ], "signature": "AGkP/s0RyVMe67k6LnVp7xlRjIzQOwty" }, "created": "2020-11-27T15:00:07.000Z", "creator": { "email": "aaaa@aaaa.com", "self": true }, "description": "v", "end": { "dateTime": "2020-11-24T17:00:00+05:30" }, "error": null, "etag": "\"3212989203384000\"", "hangoutLink": "https://meet.google.com/aya-shqk-zujkn", "has_error": false, "htmlLink": "https://www.google.com/calendar/event?eid=MW1iczZib3Y3aW1pZGhobGl0cnRqhhjghj6767OWcyNGYgcmFqa25vaWRhQG0", "iCalUID": "aaaaa@aa.com", "id": "1mbs6bouv7imihghhgdhhlitrtj9g24f", "kind": "calendar#event", "organizer": { "email": "aaaa@aaa.com", "self": true }, "reminders": { "useDefault": true }, "sequence": 0, "start": { "dateTime": "2020-11-24T16:00:00+05:30" }, "status": "confirmed", "summary": "dfdf", "updated": "2020-11-27T16:30:01.692Z" }

## Create Event Create an event in Google Calendar. ### Input Field Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection. | Input Name | Description | Required | | : -------- | : -------- | : -------- | | Calendar ID | Column name from parent table containing calendar ID, usually an email ID. | Required | | Event Summary | Column name from parent table containing a summary of the event. | Optional | | Start Time | [Jinja-templated](doc:jinja-template) for start time (Default is Batch start time). Example: 2020-09-01T12:02:24-07:00, {{start_time_column}}. | Optional | | End Time | [Jinja-templated](doc:jinja-template) for end time (Default is Batch end time). Example: 2020-09-02T12:02:24-07:00, {{end_time_column}}. | Optional | ### Output A JSON object containing multiple rows of result: - has_error: True/False - error: message/null - result: Event Details. ``` {json}{ "result": { "kind": "calendar#event", "etag": "\"3212992695106000\"", "id": "r8ihbusbj5ng9fgfgqt3r0lhhmmoic", "status": "confirmed", "htmlLink": "https://www.google.com/calendar/event?eid=cjhpaGJ1c2JqNW5nOXF0M3Iwbgfsg4GhobW1vaWMgcmFqa25vaWRhQG0", "created": "2020-11-27T16:59:07.000Z", "updated": "2020-11-27T16:59:07.553Z", "summary": "primary", "creator": { "email": "sa2-235677@quickstart-15668784545517837.iam.gserviceaccount.com" }, "organizer": { "email": "aaa@aaa.com", "self": true }, "start": { "dateTime": "2020-11-24T00:14:13+05:30", "timeZone": "UTC" }, "end": { "dateTime": "2020-11-30T19:13:26+05:30", "timeZone": "UTC" }, "iCalUID": "r8ihbusjgjjdhg9hyqg8ghgjhgbj5ng9qt3r0lhhmmoic@google.com", "sequence": 0, "reminders": { "useDefault": true } }, "error": null, "has_error": false }

Accept/Decline Event

Accept or Decline the event.

Input Field

Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.

Input Name

Description

Required

Input Name

Description

Required

Calendar ID

Column name from parent table containing calendar ID, usually an email ID.

Required

Event ID

Column name from parent table containing Event ID.

Required

Status Response

Status Response (default is accepted response).

Optional

Comment

Comment to the event (default is empty value).

Optional

Output

A JSON object containing multiple rows of result:

  • has_error: True/False

  • error: message/null

  • result: Success message.

{json}{ "result": "Event updated successfully.", "error": null, "has_error": false }

Release Notes

  • v3.0.0 - Updated architecture to support IO via filesystem