Skip to main content

iiQ Events - Write Back Logic for Google Calendar for iiQ Events

iiQ Events - Write Back Logic for Google Calendar  for iiQ Events

What does this integration do?

This integration allows district admins to sync events from one Google Calendar to their instance of iiQ Events in order to create, update, and delete events in iiQ based on changes made in Google Calendar. The following are a few key points to keep in mind:

  • It is recommended that districts use a district-wide Google Calendar for this sync.

  • This integration is API-based and syncs every hour.

Supported Use Cases & Business Requirements

  1. Event Data: Events in a synced calendar from Google Calendar are imported and synced in iiQ at the appropriate location, date, and time.

    1. This should include the start date/time and end date/time.

  2. Site → Location Mapping: Events in Google Calendar that do not have a corresponding location are not included in iiQ.

  3. Event Deletion: Upon sync, any previously synced events that are now deleted events in Google Calendar are indicated in iiQ.

  4. Event Creation (continuous): Upon sync, any new events since the last sync that are not in conflict are brought into iiQ.

  5. Event Updates (continuous): Upon sync, any edited events since the last sync show their edits in iiQ

  6. Sync Conflict Resolution: Upon sync, if a new or edited event is now at conflict in iiQ, admin is aware there is a conflict, and the event is not brought into iiQ.

  7. Sync Logging: Admin is aware of any events imported from Google Calendar..


Data Flow

This integration only supports syncing with one authorized calendar from Google Calendar and has the ability to read:

  • Event Data of the first 999 read events

    • Title

    • Description

    • Start Date/Time & End Date/Time

    • Location of the event

      • Free-form text values

      • Mapped resource values for events

  • Resource Data

    • All building resource data (used for mapping)

    • All room resource data (used for mapping)

This integration only supports syncing with one authorized calendar from Google Calendar and has the ability to write:

  • Update any of the following event Data for events created in Google Calendar if “Edit Google Calendar events in iiQ” is enabled

    • Title

    • Description

    • Start Date/Time & End Date/Time

    • Location of the event

      • Free-form text values

      • Mapped resource values for events

  • Create new events and include event Data for events created in iiQ if “Enable iiQ Events to Google Calendar write-backs” is enabled.

    • Title

    • Description

    • Start Date/Time & End Date/Time

    • Location of the event

      • Free-form text values

      • Mapped resource values for events

  • Write events back to Google that were booked for more than one room.

    • If 2 or more rooms are booked for a building, both rooms should be included in the text string written back to Google for Event Location

      • If rooms are booked at multiple buildings, all physical addresses should be included

    • If 2 or more rooms are booked for the same event in iiQ, any mapped resources for those rooms should be reserved for the event in Google Calendar.


Sync Frequency

Change Detected

Frequency

Sync Flow

Description

A new event is added in Google Calendar

Automatic - Hourly

Google Calendar → iiQ

Any new events created in Google Calendar will be reflected in iiQ within the next hour, if all conditional requirements are met (see below)

An existing event is updated in Google Calendar

Automatic - Hourly

Google Calendar → iiQ

Any changes to events in Google Calendar that have already been created in iiQ will be reflected in iiQ within the next hour, if all conditional requirements are met (see below)

An event is deleted in Google Calendar

Automatic - Hourly

Google Calendar → iiQ

Any events deleted in Google Calendar will be reflected in iiQ within the next hour, if all conditional requirements are met (see below)

A new event is created in iiQ

Instantly

iiQ → Google Calendar

Any new events created in iiQ will be instantly be pushed to Google Calendar if:

  • The district has enabled write-back: “Enable iiQ Events to Google Calendar write-backs

  • Location and/or resource data has been mapped

An event created in iiQ is updated

Instantly

iiQ –> Google Calendar

Any events updated in iiQ that have previously synced with Google Calendar will be instantly be pushed to Google Calendar if:

  • The district has enabled write-back: “Enable iiQ Events to Google Calendar write-backs

  • Location and/or resource data has been mapped

An event created in iiQ is deleted

Instantly

iiQ → Google Calendar

Any events deleted in iiQ will be instantly removed from the synced Google Calendar if:

  • The district has enabled write-back: “Enable iiQ Events to Google Calendar write-backs

  • Location and/or resource data has been mapped

An event created in Google Calendar is updated from iiQ

Instantly

iiQ → Google Calendar

Any updates to events from iiQ for events that have previously been synced with Google Calendar will have changes immediately sent to Google Calendar if:

  • The district has enabled write-back: “Edit Google Calendar events in iiQ

  • Location and/or resource data has been mapped

An event created in Google Calendar is deleted from iiQ

Instantly

iiQ → Google Calendar

Any deletion of events from iiQ for events that were originally created in Google Calendar will automatically be removed from the district’s synced Google Calendar if:

  • The district has enabled write-back: “Edit Google Calendar events in iiQ

  • Location and/or resource data has been mapped


Sync Logic

A New Event is discovered during a sync, a new event will be created in iiQ if:

  • The location for the event in Google Calendar has been mapped to a corresponding Location and Room Number in iiQ within the Location Mappings tab, AND syncs have been enabled for the mapped location in iiQ.

  • The mapped Room and Location in iiQ are “available” (as defined by room availability settings in iiQ Events) during the entire duration of the event in Google Calendar.

  • There are no scheduling conflicts (IE, other events scheduled in iiQ) for that Room and Location during the entire duration of the event.

Changes to an event are detected for an existing event (matching by the event ID as provided by Google Calendar to the Event Name, Description, Site, Sub-site, Start Time, End Time, or Date; these changes will reflect in iiQ as long as the following conditions are met:

  • A. The location for the event in Google Calendar has been mapped to a corresponding Location and Room Number in iiQ within the Location Mappings tab, AND syncs have been enabled for the Site/Sub-site in Google Calendar.

  • B. The mapped Room and Location in iiQ are “available” (as defined by room availability settings in iiQ Events) during the entire duration of the event in Google Calendar.

  • C. There are no scheduling conflicts (IE, other events scheduled in iiQ) for that Room and Location during the entire duration of the event.

If an event is deleted in Google Calendar, and this is detected during a sync, the corresponding event will be deleted in iiQ. All associated tickets will be closed as well (consistent with event deletion experience for events created in iiQ).


Field Mappings

Source System: Google Calendar
Target System: Incident IQ

All Google Calendar API endpoints can be found here.

Event Detail in Google Calendar (API endpoint)

Field in iiQ

Purpose

summary

Event Title

Used to create Event title for the event in iiQ

id

Event ID

Used for sync matching logic. html link is provided for each event based on its id in Google, allows users to view event in Google Calendar.

start

start.date

start.dateTime

start.timeZone*

Event Start Date & Time

*refers to time zone of a particular event if one isn’t specified for the entire calendar.

Used to determine event start date and time for Events in iiQ.

end

end.date

end.dateTime

end.timeZone*

Event End Date & Time

*refers to time zone of a particular event if one isn’t specified for the entire calendar.

Used to determine the event end date and time in iiQ

description

Event Description

Used to add event details to the corresponding event in iiQ

location

Event location and room number in iiQ

This field captures the geographic location of an event in Google Calendar and can be captured as free-form text. Unique string values imported for all events are used for location and room mapping within the app. (1:2 map from Google:iiQ)

---

Hannah Bailey - Director, Customer Engagement

Did this answer your question?