Send Google Sheets leads to Saleshandy sequences

By General Input

Drain your leads spreadsheet into a Saleshandy sequence every 30 minutes, with the import result written back to each row.

Integrations

  • Saleshandy
  • Google Sheets

Type

Deterministic Code

Categories

  • Sales
  • Operations

Build a code workflow that continuously drains a Google Sheets tab of new leads into a specific Saleshandy sequence.

Trigger: cron, every 30 minutes.

Configuration inputs on the workflow: the Google Sheets spreadsheet ID, the tab (sheet) name and range that holds the leads, the Saleshandy sequence ID, and the Saleshandy step ID that new prospects should be added to.

Step 1: Call Google Sheets Get Values against the configured spreadsheet and range. Expect columns: first name, last name, email, company, LinkedIn URL, and Status. Skip the header row.

Step 2: Filter the returned rows down to ones where the Status column is blank or equals "pending" (case-insensitive). If there are no matching rows, exit the run cleanly.

Step 3: For each matching row, call the Saleshandy Import Prospects into Sequence operation, passing the configured sequence ID and step ID and mapping the sheet columns onto the prospect fields (first name, last name, email, company name, LinkedIn URL). Collect the returned requestId for each row.

Step 4: For each requestId, poll Saleshandy Get Prospect Import Status until the async import job reports completion. Back off between polls and cap the total wait so a stuck job cannot hang the run.

Step 5: Map each per-prospect status code returned by Saleshandy onto a human label: 10000 becomes "imported", 10600 becomes "duplicate", 10100 becomes "invalid email", 12000 becomes "already in another sequence", and anything else becomes "error".

Step 6: Write the labels back to the sheet using Google Sheets Batch Update Values, targeting the Status column for each processed row. Use USER_ENTERED as the value input option so the cells display as plain text.

The Status column doubles as the idempotency marker, so the next run naturally skips rows that were already processed. Do not delete or reorder rows in the sheet. Log a short per-run summary (rows scanned, rows imported, rows duplicate, rows invalid, rows error).

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentLocal listing health board for every location you manageLet support send one-off Loops emails without an engineerStop cold emails to anyone with a live deal in PipedriveiMessage campaign console with pre-flight checks and delivery boardLinkedIn Ads budget pacing dashboard for every client accountFront desk appointment confirmation board for the next 3 daysGive your team Looker numbers without buying more seatsBuild audience segments from product usage and push to LoopsTurn the people who engage with your posts into Pipedrive leads