Blog
Guides on business data, contacts and outreach.
How to get business listings out of the map, find the email and WhatsApp behind each one, verify addresses before you send, and stay on the right side of the rules. Written by the people who run the API.
Designing an AI agent that answers "Find me a dentist near here"
How to build an AI agent that answers near me questions from live place data: tool choice, counting first, small results, citations, and quota errors handled.
· 9 min readCompany Enrichment API: turning a domain into a usable record
A company enrichment API turns a domain into a usable record: what it can read, what it cannot know, the 30-day cache, and a Python script to enrich a CSV.
· 9 min readGrounding an LLM in local business data
Grounding an LLM in live local business data: why models invent opening hours, how grounding differs from RAG, and one endpoint that returns citations.
· 9 min readLocalBusiness schema: generate JSON-LD from a real record
Which LocalBusiness schema fields are required, how openingHoursSpecification really works, and how to generate JSON-LD filled from a real business record.
· 9 min readAn MCP server for local business data your assistant can call
Add an MCP server for local business data to Claude or any AI agent: one command, nine tools, your key as a bearer token, and what each call costs.
· 9 min readrobots.txt for AI crawlers: the rules that actually apply
A robots.txt for AI crawlers, agent by agent: what GPTBot, ClaudeBot and the rest are for, how named groups beat the wildcard, and how to check any domain.
· 9 min readSchema markup validator API: checking structured data in CI
A schema markup validator you can call from a build. What Google's retired testing tool API left behind, what can honestly be checked, and free HTML validation.
· 9 min readWebsite Content Extraction API: clean text from any page
How a website content extraction API turns a URL into clean markdown or text, with contacts included. Every status value explained, with runnable Python code.
· 10 min readBusiness Listings API in Python: build a prospect list fast
Use a business listings API in Python to search a city, pull full records with website contacts and write a prospect list to CSV. Complete httpx scripts inside.
· 9 min readIs web scraping legal? Public business data, GDPR and terms of service
Is web scraping legal? A plain guide to public business data, US case law, GDPR legitimate interest and website terms, plus the questions to ask first.
· 9 min readHow to find WhatsApp business numbers for B2B outreach
How to find WhatsApp business numbers for B2B outreach: where click-to-chat links live, the API fields that return them, and a workflow with working code.
· 9 min readHow to scrape Google Maps by city without missing businesses
How to scrape Google Maps by city and get every business, not just page one: why single searches cap out, how grid search works, plus code for a full sweep.
· 9 min readEmail Verification API: how it works and why bounces cost you
What an email verification API checks, how it confirms a mailbox without sending mail, what catch-all means, and how to read every result. Code included.
· 9 min readGoogle Places API pricing explained, with cheaper alternatives
How Google Places API pricing works: per-request SKUs, field masks, free monthly credit and storage limits, plus what the same records cost on an alternative.
· 9 min readLocal business lead generation: a practical 2026 guide
Local business lead generation step by step: choose a niche, pull every matching business in a city, add website contacts, verify the emails, reach out.
· 9 min readHow to find business email addresses, by hand and by API
How to find business email addresses by hand or with an API: where sites hide them, which mailboxes to keep, which to drop, and how to verify. Code included.
· 9 min readGoogle Maps Scraper API: extract business data at scale
What a Google Maps scraper API returns, how paging and city coverage work, what each record costs, and the rules that keep it running. Curl and Python included.