Skip to content
FlowHubFluxonLab
A
AI Automationfree

Enrich Company Data from Google Sheet with OpenAI Agent and ScrapingBee

by Datakiadapted from n8n official workflow galleryUpdated Aug 2026
RequiresAAI AgentCall n8n Workflow ToolCall n8n Workflow ToolGoogle SheetsGoogle SheetsHTTP RequestHTTP RequestOpenAI Chat ModelOpenAI Chat ModelStructured Output ParserStructured Output Parser
Share Post Share
OPStructured Output ParserStructured Outp…OpenAI Chat ModelOpenAI Chat Mod…Get rows from Google SheetGet rows from G…TWCall n8n workflow : Scrape companies homepage contentCall n8n workfl…Update Company's Row on Google SheetUpdate Company'…HRScrapingBee : Scrape company's homepage dataScrapingBee : S…EWTool called from AgentTool called fro…SILoop Over ItemsAgAI AgentSeSet company urlMaHTML to MarkdownWeWebhook12345678
1/5
FLOWS
STEPS · 8
Starts on an incoming request

This workflow demonstrates how to enrich data from a list of companies in a spreadsheet. While this workflow is production-ready if all steps are followed, adding error handling would enhance its robustness. Important notes Check legal regulations**: This workflow involves scraping, so make sure to check the legal regulations around scraping in your country before getting started. Better safe than sorry! Mind those tokens**: OpenAI tokens can add up fast, so keep an eye on usage unless you want a surprising bill that could knock your socks off! 💸 Main Workflow Node 1 - Webhook This node triggers the workflow via a webhook call. You can replace it with any other trigger of your choice, such as form submission, a new row added in Google Sheets, or a manual trigger. Node 2 - Get Rows from Google Sheet This node retrieves the list of companies from your spreadsheet. here is the Google Sheet Template you can use. The columns in this Google Sheet are: Company**: The name of the company Website**: The website URL of the company These two fields are required at this step.

Tags

n8nreference-onlyagentgoogle-sheetslm-chat-open-aioutput-parser-structuredtool-workflow
Connects
AAI Agentcalln8nworkflowtoolCall n8n Workflow ToolsheetsGoogle SheetsWHTTP RequestopenaichatmodelOpenAI Chat ModelstructuredoutputparserStructured Output Parser
CategoryAI Automation
Triggermanual
Complexitycomplex
Nodes12
AddedOct 16, 2024

Related workflows

See all AI Automation
ABC
free

Draft personalized cold emails from Google Sheets using Gemini and HubSpot

Quick overview This workflow batch-processes leads from Google Sheets, researches each person and company using Tavily plus Google Gemini, drafts a personalized cold email, then creates/updates the contact in HubSpot with a research note and a saved email draft before marking the lead as Done in the sheet. How it works Runs manually and sets a batch size that controls how many leads to process per run. Reads leads from Google Sheets, skips rows already marked as Done, and normalizes the selected batch into clean lead fields. Processes the batch one lead at a time and uses Tavily search (last 60 days) with Google Gemini to extract the most recent public activity, pain points, and a personalization hook. Cleans and parses the research JSON so it can be reused reliably downstream. Uses Google Gemini to draft a 90–120 word cold outreach email (subject and body) that incorporates the research and offers a free “Automated LinkedIn Post Creator” n8n workflow. Creates or reuses the HubSpot contact, logs a HubSpot note with the research and drafted email, and saves the email as a HubSpot engagement in DRAFT status. Updates the matching row in Google Sheets (by Email) to set Status to “Done

by Vyrazu Labs
ACgmail
free

Send and track Slack invoice requests with Gemini, Google Sheets and Gmail

Quick overview Youtube Video: https://youtu.be/42-oHh9w9Eo This workflow listens for Slack @mentions, uses Google Gemini to classify the request and extract invoice details, then reads and updates Google Sheets, generates invoice PDFs with PdfBro, sends invoices or reminders via Gmail, and posts confirmations or errors back to Slack. How it works Triggers when the workflow’s Slack app is mentioned in a specified Slack channel. Uses Google Gemini to classify the message intent (send invoice, remind invoice, or check status) and extract the recipient email and invoice due date. Routes the request based on the extracted intent and stops if the intent cannot be determined. For SEND_INVOICE, looks up the client in a Google Sheets “Client Bill” spreadsheet and posts a Slack error if no matching email is found. If a client is found, generates an invoice PDF with PdfBro, emails it to the client via Gmail, appends/updates the invoice record in a Google Sheets “Client Invoices” spreadsheet, and posts a Slack confirmation. For REMIND_INVOICE, finds an UNPAID invoice for the email in the “Client Invoices” Google Sheet, regenerates the invoice PDF with PdfBro, emails a reminder via Gmail, and p

by iamvaar
AasanaCW
free

Report workflow errors to Asana tasks with Google Chat and Grok 4.5 analysis

Quick overview When a monitored workflow fails, this reads its Description field to find the owning client and assignee, looks them up in Asana, analyses the error with Grok 4.5, and creates an assigned task with a severity-based due date. Repeat failures comment on the existing task. How it works Any workflow that names this one as its error workflow triggers it on failure. There is no production trigger by design. The error payload only carries a workflow ID, so an HTTP Request calls the n8n API to read that workflow's own Description field, which holds a small JSON object naming the client and the assignee. Asana projects and users are fetched live and matched by name, so no GID is ever hardcoded. A failed match raises a warning that travels downstream instead of failing silently. Asana is searched for an open task covering the same workflow and node. If one exists, a comment carrying the new execution ID is added rather than a duplicate task. For a new error, Grok 4.5 via OpenRouter returns a root cause, a solution, concrete steps, a severity, and a category, held to a fixed shape by a structured output parser. Severity sets the due date: Critical today, High tomorrow, Medium i

by Aironauts AI