# Zapier

VisiGrid's Zapier integration offers **Create Spreadsheet Row**: append
incoming leads, form submissions, or events to a cloud worksheet using the
column headings in row 1.

The integration is currently available through private testing access. If
you already have access, select VisiGrid in your Zap. Public directory
availability is pending review.

## Connect your account

1. Sign in to [VisiGrid](https://app.visigrid.app) and verify your email.
2. In **Settings**, create a [personal API token](https://docs.visigrid.app/api/#authentication) with
   **write** access. Write includes read access.
3. In Zapier, connect a VisiGrid account and paste the `vgp_` token into the
   authentication field.

There is no additional VisiGrid charge for API or Zapier access. Zapier's own
plan and usage limits still apply. Your token can access only spreadsheets
available to your VisiGrid account, and writes require an owner or editor role.

## Create Spreadsheet Row

1. Create or open a cloud spreadsheet and put unique, nonempty column names
   in row 1, for example **Email**, **Name**, and **Message**.
2. Add the **Create Spreadsheet Row** action to your Zap.
3. Select the spreadsheet and worksheet.
4. Map incoming data to the fields named after your column headings.
5. Test the action and check the appended row in VisiGrid, then enable the Zap.

The action appends below the last cell containing a value or formula anywhere
on the selected worksheet. It does not fill gaps between existing rows.
Formatting-only rows do not extend the table.

## Data behavior

- Column moves are supported. Renaming or removing a mapped heading requires
  remapping the Zap.
- Worksheet reordering is supported. Renaming or removing the selected
  worksheet requires selecting it again.
- Incoming strings are literal text, even when they start with `=`.
  This action does not infer numeric or date types from text fields.
- Empty strings and null inputs are skipped; zero and false are retained.
- Each action supports at most 1,000 mapped cells and a canonical v2 workbook
  up to 4 MiB. Returned row numbers are one-based positions, not permanent IDs.

This version provides row creation. It does not provide lookup, update,
or row-change trigger events.

## API behavior and troubleshooting

The integration uses [list spreadsheets](https://docs.visigrid.app/api/spreadsheets/#list-spreadsheets)
to authenticate and select an editable workbook, [workbook structure](https://docs.visigrid.app/api/spreadsheets/#get-workbook-structure)
to select a worksheet, and a [snapshot](https://docs.visigrid.app/api/spreadsheets/#get-a-snapshot)
followed by a [cell write](https://docs.visigrid.app/api/spreadsheets/#write-cells) to append the row.

Each write includes the snapshot's revision. An explicit 409 conflict causes
the action to reread the workbook and calculate the append again, with at
most three attempts. It does not automatically retry ambiguous transport
failures or timeouts. Before replaying a failed Zap, check whether its row
was already written; replay can create a duplicate.

If a workbook is missing from the selector, check that the connected account
has owner or editor access. If authentication fails, check the token's
expiration and scopes and reconnect as needed. See [errors and limits](https://docs.visigrid.app/api/errors/)
for HTTP errors and rate limits.