{"product_id":"collect-bbb-business-listings-with-apify-to-google-sheets","title":"Collect BBB Business Listings with Apify to Google Sheets","description":"\u003ch3\u003eAutomatically collect BBB business listings with Apify and import them into Google Sheets\u003c\/h3\u003e\n\u003cp\u003eThis n8n workflow runs a bounded Better Business Bureau (BBB) search using \u003cstrong\u003eApify’s BBB Advanced Scraper\u003c\/strong\u003e, then writes the resulting business listings into \u003cstrong\u003eGoogle Sheets\u003c\/strong\u003e—updating existing rows by \u003cstrong\u003eBBB profile URL\u003c\/strong\u003e and logging each import run for replay and recovery.\u003c\/p\u003e\n\n\u003ch3\u003eWhat this workflow does\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eStarts manually\u003c\/strong\u003e and reads your configured search term, location, distance, target Google Sheets spreadsheet ID, optional Apify resume run ID, and a maximum Apify charge.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eConnects to Google Sheets\u003c\/strong\u003e to validate the destination spreadsheet, create required tabs if missing, and acquire a \u003cstrong\u003etemporary lock\u003c\/strong\u003e to prevent concurrent imports.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eResumes or starts an Apify run\u003c\/strong\u003e: either resumes the specified Actor run using the Apify resume run ID, or starts a new bounded run of \u003cstrong\u003eApify BBB Advanced Scraper\u003c\/strong\u003e with your search parameters and charge cap.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eCheckpoints and polling\u003c\/strong\u003e: saves a “PROCESSING” checkpoint for the run in the Google Sheets run log, then polls Apify until the Actor run succeeds.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eDownloads and normalizes results\u003c\/strong\u003e: retrieves the completed Apify dataset, validates item count limits, normalizes fields, and \u003cstrong\u003ededuplicates businesses by BBB profile URL\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eWrites and updates rows\u003c\/strong\u003e: inserts new businesses and updates existing ones, then saves an import summary in “BBB Runs.” Replaying an imported run preserves its successful log entry.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eReleases the lock\u003c\/strong\u003e and returns a summary of the import.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eUse cases\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eBuild and refresh a lead list from BBB profiles for a specific market using search term + location + distance.\u003c\/li\u003e\n  \u003cli\u003eMaintain a master “BBB Businesses” sheet that updates over time rather than duplicating entries.\u003c\/li\u003e\n  \u003cli\u003eOperationally safe scraping: checkpointed runs and replay capability to recover from failed executions.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eTechnical details\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eApify integration\u003c\/strong\u003e: uses the official \u003cstrong\u003e@apify\/n8n-nodes-apify\u003c\/strong\u003e node(s) with your Apify API credential for the BBB Advanced Scraper.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eGoogle Sheets\u003c\/strong\u003e: OAuth2 authentication and import destination validation.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eWorkflow nodes\u003c\/strong\u003e: if, set, code, sticky note, http request, and manual trigger.\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"N8N Commerce","offers":[{"title":"Default Title","offer_id":46001873780915,"sku":"N8N-19452","price":3.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/6279\/6723\/files\/TC7KAc1rx4V-XEfAbhEN4_GMw0nX2U.png?v=1789118111","url":"https:\/\/buyflowscripts.com\/products\/collect-bbb-business-listings-with-apify-to-google-sheets","provider":"N8N Commerce","version":"1.0","type":"link"}