Auto-enrich new prospect rows and ping the rep in Slack

The moment a rep drops a new company domain into your Outbound Prospects sheet, it gets researched, written back to the row, and announced in Slack.

Deterministic Code
Google SheetsContext.devSlackSalesLead EnrichmentNotifications & Alerts
PromptCreate

Build me a deterministic code workflow that auto-enriches new outbound prospect leads. I keep a Google Sheet called "Outbound Prospects" where reps drop new company domains throughout the day. The workflow should fire on every new row, enrich it, write the data back, and ping the rep in Slack.

Trigger: Google Sheets poll on new_row in the Outbound Prospects sheet. The sheet has at minimum a domain column (input) and an owner column holding the Slack handle of the rep who owns the row. The workflow should be configurable so I can point it at a different sheet or different column names later.

For each new row, take the value in the domain column and run these Context.dev steps in order:

1. Call Context.dev "Retrieve Brand Data by Domain" to pull company name, description, logo URL, HQ address, and social links (especially LinkedIn URL).

2. Call Context.dev "Classify NAICS Industries" on the same domain to get the primary NAICS code.

3. Call Context.dev "Scrape Screenshot" of the homepage (https://<domain>) to get a visual thumbnail URL.

Then call Google Sheets "Update Values" to write the enriched data back into the same row. Map the results to these columns: company_name, description, logo_url, naics_code, hq_city (extract from the brand address), linkedin_url (from socials), and screenshot_url. Only touch those columns. Leave anything else the rep typed alone.

Finally call Slack "Send a Message" to a configurable channel (default #prospecting). The message should tag the rep listed in the owner column and contain a one-line summary of the lead (company name, NAICS industry, HQ city) plus the screenshot URL so it unfurls inline.

Error handling: if any Context.dev call returns an error for the domain (bad domain, 404, timeout, etc.), write the literal string "lookup_failed" into the company_name column for that row and still post a Slack message tagging the rep so they know to research the domain manually. Do not crash the run on a single bad row.

Keep this as a code workflow, not an agent. The steps are fixed, the column writes are fixed, and the Slack format is fixed every time.

What does this prompt do?

  • Watches your Outbound Prospects sheet and fires the second a rep adds a new row with a company domain.
  • Fills in company name, description, logo, NAICS industry code, HQ city, LinkedIn, and a homepage screenshot, written straight back into that row.
  • Posts a one-line summary into your prospecting channel and tags the rep listed in the owner column so they know their lead is ready.
  • If the lookup fails, marks the row as a failed lookup and still pings the rep so nothing slips through the cracks.

What do I need to use this?

  • A Google account with edit access to your Outbound Prospects sheet.
  • A Slack workspace and a channel where the alerts should land (for example, #prospecting).
  • A Context.dev account for the company lookups, industry classification, and homepage screenshots.
  • Your sheet should have a domain column for input and an owner column listing the Slack handle of the rep who owns the row.

How can I customize it?

  • Swap the destination channel, or DM the rep directly instead of posting in a shared channel.
  • Add or remove enrichment columns. Pull in employee count, founding year, or full address if you want more in the row.
  • Tighten the summary line that posts to Slack so it matches how your team likes to qualify leads at a glance.

FAQs

What triggers the workflow?
A new row appearing in your Google Sheet. As soon as a rep drops a domain into the Outbound Prospects tab, the workflow picks it up and starts enriching.
What happens if Context.dev cannot find the company?
The row gets marked as a failed lookup in the company name column, and the rep still gets a Slack ping so they can decide whether to research the domain manually.
Can I use a different sheet or a different column layout?
Yes. Point the workflow at any sheet, and tell it which columns hold the domain and the owner. The enrichment columns are configurable too.
Will the rep get pinged for every single new row?
Yes. Every new domain triggers a Slack message tagging whoever is listed in the owner column, so the right person always sees their lead.
Does this overwrite data the rep already typed?
No. The workflow only writes into the enrichment columns (company name, description, logo, industry, city, LinkedIn, screenshot). Anything the rep put in other columns is left alone.

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
Win back LiveChat visitors whose chats went unanswered

Every couple of hours we find the chats your team never answered, email those visitors a real reply, and hand the sensitive ones to a support lead.

LiveChat
Gmail
Slack
Agentic Task
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

Stop hand-researching every new lead.

Connect Google Sheets, Context.dev, and Slack once, and Geni enriches every new prospect row the moment it lands.