Weekly Warmly account log to Google Sheets

Every Monday morning, append last week's warm accounts from Warmly to a Google Sheet so revops has a clean longitudinal log.

Deterministic Code
WarmlyGoogle SheetsSalesOperationsData SyncAI ReportsResearch & Monitoring
PromptCreate

Build a code workflow that runs every Monday at 7am America/New_York and logs the prior seven days of warm accounts from Warmly into a Google Sheet, one row per account. This is a deterministic ETL: list, transform, append. No judgement steps, no LLM nodes.

Trigger: cron, every Monday at 07:00 America/New_York.

Install-time inputs that the installer fills in once: the destination Google Sheet (spreadsheet id or URL) and the tab name to append to. Assume the tab already exists with a header row.

Step 1. Page through Warmly list_warm_accounts for the prior 7 days. Use take=500 and offset starting at 0. After each page, advance offset by take and stop when the returned array length is less than take. Collect all accounts into a single array. Scope the time window to the last 7 days ending at the run start. Reference the Warmly common_docs (call get_service for warmly) for the agent-tools execute gateway shape and pagination rules.

Step 2. For each account, build a row with these columns in this order: account name, domain, total sessions, distinct identified visitors, distinct pages visited, top page viewed, first-seen timestamp (ISO 8601), last-seen timestamp (ISO 8601), CRM intersection field (the Warmly indicator of whether the account is already in the connected CRM).

Step 3. Append the rows to the configured Google Sheet tab using Append Values with valueInputOption=USER_ENTERED so dates render naturally. Send the rows in a single batch where possible. If there are zero accounts for the week, write nothing and exit cleanly.

Error handling: if Warmly returns 429, back off ~60 seconds and retry the same page. If Google Sheets returns 429 or 503, retry the append with exponential backoff (start 1s, cap 64s, add jitter). Surface a clear failure if the configured tab does not exist.

The same tab should grow week over week as a longitudinal record of warm-account intent. Do not deduplicate against prior weeks. Each Monday adds one batch of fresh rows for the trailing seven days.

What does this prompt do?

  • Runs every Monday at 7am Eastern and pulls every warm account Warmly surfaced in the prior seven days.
  • Appends one row per account to your chosen Google Sheet tab, with company name, domain, sessions, identified visitors, distinct pages, top page, first-seen and last-seen timestamps, and whether the account is already in your CRM.
  • Grows the same tab week after week so you can sort, filter, and pivot in Sheets or pipe the log into a BI tool.
  • Skips judgement and AI work entirely. It is a clean, deterministic export you can trust to run unattended.

What do I need to use this?

  • A Warmly workspace with API access enabled (you'll paste your API key and Organization ID into General Input once).
  • A Google account that can edit the destination spreadsheet.
  • The spreadsheet link and tab name where you want rows to land. The tab should already exist with a header row.

How can I customize it?

  • Change the schedule. Many teams move it to Friday afternoon so the log is ready for Monday planning, or run it daily.
  • Swap which columns get written. Drop the CRM-intersection column, add a Warmly score, or split first-seen and last-seen into separate date and time columns.
  • Filter the rows before they land. For example, only log accounts with three or more sessions, or skip accounts already in your CRM so the sheet stays focused on net-new pipeline candidates.

FAQs

Does this overwrite my sheet each week?
No. New rows are appended below the existing data, so the tab becomes a rolling log you can sort and pivot. Header rows stay untouched.
What if Warmly returned hundreds of accounts in one week?
The workflow pages through Warmly until it has every account from the past seven days, then writes them in one batch. You don't need to think about pagination.
Can I send this to a different destination instead of Google Sheets?
Yes. Swap the final step for Airtable, Notion, BigQuery, or any other destination General Input supports. The Warmly pull stays the same.
Will it duplicate accounts that showed up two weeks in a row?
Yes by design. Each run logs the prior seven days, so an account that warmed up in two consecutive weeks will appear once per week. That is what makes the sheet a true longitudinal record of intent.
Do I need a paid Warmly plan?
List reads are free of credits in Warmly, so this workflow does not burn your monthly identification credits. You do need API access enabled on your Warmly workspace.

Related templates

Call overdue Xero customers with an AI collections agent

Every weekday at 10am, an AI voice agent phones your most overdue Xero accounts, logs what each customer promised, and reports back to finance in Slack.

LiveKit
Xero
Deepgram
+2
Agentic Task
Local listing health board for every location you manage

See every Google Maps listing you manage on one screen, ranked worst first, with an audit button that writes the fix list for you.

Local Business Data
Google Sheets
App
Let support send one-off Loops emails without an engineer

Your team picks a template, finds the customer, checks they are safe to email, then sends it, with every send logged where the whole team can see it.

Loops.so
Stripe
Google Sheets
App
Stop cold emails to anyone with a live deal in Pipedrive

Every night at 2am, pull the contacts on your open and won deals and block them from your cold outreach before the next send goes out.

Mailshake
Pipedrive
Google Sheets
Deterministic Code
iMessage campaign console with pre-flight checks and delivery board

Build every text campaign in one screen: check who is actually reachable, see a realistic send plan, then watch delivery land row by row.

LoopMessage
Google Sheets
HubSpot
App
LinkedIn Ads budget pacing dashboard for every client account

See every LinkedIn ad account's spend against the budget you committed to, catch overspend early, and rebalance without rebuilding a spreadsheet.

LinkedIn Ads
Google Sheets
Slack Bot
App

Turn Warmly's signal into a sortable history.

Connect Warmly and Google Sheets once, and Geni appends last week's warm accounts to your sheet every Monday at 7am.