Check for new data in Google Sheets
This is a 'Workflow' template which means that it is a single standalone workflow.
Some workflow templates can be modified to work with other workflow templates - e.g. to convert a data sync between two services from uni-directional to bi-directional
OverviewCopy
Fetching new rows in Google Sheets and sending them somewhere else is a very common requirement due to the infinite potential uses of Google Sheets.
This template allows your team to easily check for new rows in a google sheet and perform some action when new rows are found, such as:
Sending them to a CRM
Sending a notification to Slack
Sending to the 100s of other connectors available in the Tray platform.
This Workflow closely imitates a trigger and runs every 5 minutes to pick up any new rows that have been added to a Google Sheet.
Connectors UsedCopy
The following connectors are used in this template. This is mostly provided for reference only - there is no need to read through the linked connector pages. All you need to know for this template is explained here, although you will likely need to look up service authentication instructions:
End ResultCopy
Any time new rows are added to a Google Sheet:
This workflow will create a data object for each row:
Which can then be sent to any service of your choice.
For example it could be sent to a Slack Channel:
Or it could be sent to a CRM such as Salesforce:
This workflow only creates the new row objects, it leaves you to decide what service to send them to, as per the Getting Live section below
PrerequisitesCopy
This workflow assumes the following:
Your team can authenticate to Google Sheets
Your Google Sheet has column Headers as the first row
New rows will be added to the bottom of this Sheet
Rows in this spreadsheet will not ever be deleted
Getting LiveCopy
To configure the workflow for your own use:
Workflow logicCopy
Step-by-step explanationCopy
Note that in step 2, the last_row_processed name given to the key is arbitrary and could be anything such as 'last_row' or 'last_processed_row'. You just need to make sure that other data storage steps (i.e. Set Last Row Processed (storage-2) use the same key name