Global Action: Insert or update one row in a Google Sheet

The  Insert or Update one row in a Google Sheet Action in Arigato allows merchants to send a single row of data a Google Sheet at a time.

Configuring the Action

This Action requires the integration be set up and configured first. See the Related Article at the bottom of the page for instructions on configuring the integration in general.

Field Name Description
URL Required. The URL to the Google Sheet where the data will be added.
Which Sheet (Tab)? Required. The specific sheet tab within the Google Sheet to send data to.
Insert or Update Changes the behavior of the Action to add new data to a row or modify existing data based on a primary key in a Google Sheet.
Cell Values Defines the data to be inserted or updated in specific columns of a Google Sheet row, using column letters like A, B and C.
Primary Key The Primary Key is a unique identifier in a specific column used to determine where to insert or update data within a Google Sheet.

Example app configuration for Cell Values using tokens:

A {{ product.title }}
B {{ product.vendor }}
C {{ product.created_at | date('Y-m-d H:i:s') }}

Example showing the rendered result of the above configuration in a Google Sheet.  

A B C
Classic Tee Awesome Apparel 2023-04-05 14:30:00

Troubleshooting & Usage Tips

Preventing Leading Zeros From Being Dropped
Google removes leading zeros when they are inserted into a Sheet, for example 0123 will be added to a Sheet as 123.

To preserve leading zeros, add an apostrophe to the beginning of the value with no spaces. For example, '0123, or when using a token add it before the token, '{{ variable }}

Inserts Are Not Working as Expected
The first cell in the first column must not be blank. The value does not need to be unique, but it must not be blank. Using unique identifiers is a good practice. Using the product or order id for this purpose is recommended.

Updates Are Not Working as Expected
Inserts rely on the Primary Key being set to a unique value in each row, otherwise updates will happen to all rows that match the Primary Key. 

Inserted Data Looks Encoded
Special characters in text are always escaped by Shopify before sending the data to apps. This data can sometimes be further escaped by the app itself. In most cases, the data can be returned to the original format using the raw filter. For example {{ product.body_html | raw }}.

Reading data from a Google Sheet
Arigato does not currently support reading data. It only supports adding data.

Poor Performance of Inserts or Updates
Google's Sheet's API is known to be very slow, especially with large data sets. Slow responses from Google can result in failed inserts as the Google API can hang for minutes without response. Less data per Sheet can help this issue. Consider switching to the Airtable integration if performance becomes an issue.

Inserts Failing with Log Message: Invalid Grant, Bad Request
Refer to the Related Article linked below titled Google Sheets Integration.

Multiple Actions or Apps Sharing a Sheet
Only one app or Action should be inserting or updating data in a Sheet at a time to avoid unexpected results, collisions, etc.

Custom Actions

Using this Action in a Custom Action is supported. See documentation.

Recommended App

Check our other app, Instasheets, for additional functionality.