Skip to main content
Nintex Community Menu Bar

Hi. I’m working with Google Calendar and I am able to view the calendar and events properly. But, when it comes to creating new events, there are no exceptions thrown and event record is never created. I have also experienced many difficulties with All Day events and none of the combinations seems to work. The page I’m testing is on is pCalendar

Hi Daniel,


It looks like this is related to both a model property and some quirks unique to Google Calendar (at least in comparison with Salesforce). It takes a few extra steps to get Google Calendar working. Here’s what I had to do:


Steps to get GCal working:



  1. Make sure that “Send Invite on Event Creation” in your model properties is unchecked. This currently breaks event creation in any Skuid component.




  2. Create 2 UIO fields on your GCal model: a checkbox to be your “all-day controller” (name the field something like IsAllDay_Controller), and another checkbox formula with the following formula: IF({{startDate}},true,false).



  • This looks to see if the GCal startDate field has a value (which is only populated for ‘all-day’ events in GCal). This is done because Google Calendar does not have a checkbox for “IsAllDay” the way that Salesforce does on the Event object. In Google Calendar, all-day events are designated as such by having the startDate and endDate fields populated (as opposed to just populating startDateTime and endDateTime).

  1. Set up a model action to run on the GCal model’s query (on page load): Update rows (all rows in model) - update the all-day controller checkbox with the value from the all-day formula field you created in step 1.

  • This is done so that the checkbox field can be used as the all-day checkbox in the calendar event source. This is important because this is how the calendar decides whether to render an event as a “timed” event or all-day event (color bar in month view cell and at the top of the week and day view).

  1. On the event source, set up a custom create action with the following fields getting populated on create:

startDateTime: {{startDateTime}}


endDateTime: {{endDateTime}}


startDate: {{startDateTime}}


endDateTime: {{endDateTime}}


IsAllDay_Controller: {{allDay}}


  • This is how custom create actions get the datetime context from the calendar interaction, auto-populating their values based on where you click in the calendar. This should be done anyways for most custom create actions using the calendar.

  1. In the custom create modal, in a form component, conditionally render startDateTime and endDateTime so that they only show if IsAllDay_Controller is checked, and vice versa for startDate and endDate. Make sure that IsAllDay_Controller is available in the form.

  • This is how the right field gets shown in the form for an all-day vs. a timed event.

  1. In the custom create modal, set up a custom save button. On the button’s actions, include a Branch that checks whether IsAllDay_Controller is checked before saving. If it is checked, then update startDateTime and endDateTime to blank values before saving.

Nuances to Google Calendar models:



  • GCal maxes out at 250 records per model. Even when staggered with multiple queries, the model will not bring any more rows in once that limit is reached.




  • Models on a Google Calendar data source will automatically include a timeMin and a timeMax condition to bring in records where LAST_N_WEEKS:4 and NEXT_N_WEEKS:4.



Right now, this can be changed to be dynamic based on the current day in the month using a formula field to calculate how many weeks before, and how many weeks after, worth of data should be returned.


Reply