Turn a Google Sheets row into a Google Calendar event with a Gmail confirmation
Every new row in your Scheduled Events sheet creates a Google Calendar invite and sends a plain-text Gmail confirmation to every attendee.
Build me a deterministic code workflow that turns each new row in a Google Sheets spreadsheet into a real Google Calendar event and a Gmail confirmation to every attendee. This is a fixed pipeline with one trigger and two actions, no agent reasoning.
Trigger: Google Sheets new_row poll on the configured spreadsheet and tab (call the tab Scheduled Events). The row has these fixed columns in this order: Title, Description, Start (ISO 8601), End (ISO 8601), Attendees (comma-separated emails), and Location.
Step 1, Google Calendar Create Event on the primary calendar. Map the columns directly into the event payload: Title to summary, Description to description, Start to start.dateTime, End to end.dateTime, Location to location, and split the Attendees column on commas into the attendees array of email objects. Set sendUpdates to all so Google Calendar sends its standard invitations to every attendee. Capture the created event's htmlLink and id for the next step.
Step 2, Gmail Send a Message. Send one plain-text confirmation email to the same comma-separated attendee list (To header). Subject should be: Confirmed: {Title} on {Start}. Body should restate the title, the start and end times, the location, and include the htmlLink from the calendar event so recipients can jump straight to it. Use the connected Gmail account as the From address.
Keep the graph simple: trigger to Create Event to Send a Message, with the event id and htmlLink threaded from step 1 into step 2. No branching, no LLM calls, no retries beyond the platform default. Run it as code, not an agent.
Additional information
What does this prompt do?
- Watches a Google Sheets tab named Scheduled Events and triggers on every new row.
- Creates a Google Calendar event on your primary calendar using the row's Title, Description, Start, End, Attendees, and Location columns.
- Sends Google Calendar invitations to all attendees via the standard sendUpdates flag.
- Fans out a plain-text Gmail confirmation to the same attendee list with the time, location, and a link to the calendar event.
What do I need to use this?
- A connected Google Sheets account with access to the spreadsheet that holds your Scheduled Events tab.
- A connected Google Calendar account with write access to the primary calendar that should hold the events.
- A connected Gmail account that will be the From address on the confirmation emails.
- A Google Sheet with columns Title, Description, Start (ISO 8601), End (ISO 8601), Attendees (comma-separated emails), and Location.
How can I customize it?
- Point the trigger at a different spreadsheet, tab, or column layout if your operations team already maintains one.
- Swap the primary calendar for a shared team calendar, or branch by row to write to different calendars per program.
- Edit the Gmail body template to match your brand voice, add a join link column, or attach an .ics file.
- Toggle the Calendar sendUpdates flag between all, externalOnly, or none if you do not want Google to send its own invites.
Frequently asked questions
What columns does the Google Sheet need?
Does this send the Google Calendar invite and a separate Gmail email?
Why is this a code workflow instead of an agent?
Can I use a calendar other than my primary one?
What happens if a row has a malformed date or missing attendees?
Related templates
Every night we run your saved Databricks query and refresh a Google Sheet with the results, so your team reads the latest numbers without a login.
Every morning, automatically record yesterday's match results and each league's latest table into a spreadsheet you can chart or pivot.
Every Monday morning, finance leadership gets a clear recap of last week's Braintree sales, refunds, and disputes by email and Slack.
Every morning we check your list of IP addresses for abusive activity, update your spreadsheet, and alert your team only about the risky ones.
Automatically add every new Azure DevOps work item to a Google Sheets tracker so your team can filter, sort, and report without opening Azure DevOps.
Check key email accounts against known data breaches every weekday, log every exposure to a spreadsheet, and get a Slack alert when a new breach shows up.
Stop hand-creating calendar invites from your event spreadsheet.
Connect Google Sheets, Google Calendar, and Gmail once, and every new row turns into a real invite and a confirmation email.